   {params, body, wheres} = fnDefinition node
   if !params?
     throw new Error 'missing parameter list'
-  paramNames = params.map(getToken).map(validIdentifier)
+  paramNames = (inside params).map(getToken).map(validIdentifier)
   node.scope = toMap paramNames
   curry paramNames, """
     (function (#{paramNames.join ', '}) {

  return

labelParams = (ast, params) ->
  paramNames = (token for {token} in params)
  mapTokens paramNames, ast, (word) ->
    word.label = 'param' if isReference word


labelNames = (pattern) ->
  if Array.isArray pattern
    if isList(pattern) or isTuple pattern
      pattern.type = 'pattern'
      (inside pattern).map labelNames
    else
      [op, args...] = inside pattern
