 for jsMethod in ['binary', 'ternary', 'unary', 'access', 'call', 'method']
   do (jsMethod) ->
     ms["Js.#{jsMethod}"] = (ctx, call) ->
-      call.tea = toConstrained typeConstant "JS"
+      call.tea = toConstrained jsType
       terms = _arguments call
       compatibles = (for term, i in terms
         compiled = termCompile ctx, term

boolType = typeConstant 'Bool'
numType = typeConstant 'Num'
regexType = typeConstant 'Regex'
jsType = typeConstant 'JS'

safePrintType = (type) ->
  try

  assignCompile ctx, call, (termCompile ctx, expression)

ms.global = ms_global = (ctx, call) ->
  call.tea = toConstrained jsType
  assignCompile ctx, call, (jsValue "window")

callJsMethodCompile = (ctx, call) ->
