 # When for the purposes of walking the contents of a function body, the CodeNode
 # has no *children* -- they're within the inner scope.
 exports.CodeNode: class CodeNode extends BaseNode
-  type: 'Code'
 
   constructor: (params, body, tag) ->
     @params:  params or []

# A splat, either as a parameter to a function, an argument to a call,
# or as part of a destructuring assignment.
exports.SplatNode: class SplatNode extends BaseNode
  type: 'Splat'

  constructor: (name) ->
    name: literal(name) unless name.compile

              """

  # Bind a function to a calling context, optionally including curried arguments.
  # See [Underscore's implementation](http://jashkenas.github.com/coffee-script/documentation/docs/underscore.html#section-47).
  __bind:   """
            function(func, obj, args) {
                return function() {
