   {js: jsNoopTranslate}
 
 jsNoopTranslate = ->
-  ""
+  "null"
 
 
 jsReturn = (arg) ->

  {ir: irSetTranslate, items}

irSetTranslate = (ctx, {items}) ->
  (jsCall "Immutable.Set.of", items)


irJsCompatible = (type, expression) ->

  """"""
  "global.Math.PI", Math.PI

  'sets'
  """
  first (macro [set]
    (: (Fn (Set a) a))
    (Js.method set "first" {}))
  x 2
  y (Set x 1 3)
  """
  '(first y)', 2

  # TODO: support matching with the same name
  #       to implement this we need the iife to take as arguments all variables
  #       with the same names, since JavaScript shadows it too strongly and
