       malformed ctx, ctx.definitionPattern(), "Macro with this name already defined"
     else
       ctx.declareMacro ctx.definitionPattern(), simpleMacro eval compiledMacro
-      typedFn_ params, type, join docs, [call_ (token_ macroName), params]
+      fn_ params, concat [typeList, docs, [call_ (token_ macroName), params]]
 
 simpleMacro = (macroFn) ->
   (ctx, call) ->

  [paramTuple, rest...] = _arguments call
  [maybeType] = rest

  doDeclare =  isTypeAnnotation maybeType

  if hasName
    macroName = ctx.definitionName()

  else
    if nonLabeledArgs.length < positionalParams.length
      # log "currying known call"
      lambda = (fn_ extraParams, [sortedCall])
      trackTransformation lambda, sortedCall
      compiled = callMacroCompile ctx, lambda
      retrieve call, lambda
