       type: "ExpressionStatement"
       expression: node.argument
     else
-      node
-  )
-  #_(ast).inspect()
-  code = escodegen.generate(ast)
-  console.log code
-  code
+      node)
+  escodegen.generate(ast)
 
 evaluate.define = define
 evaluate.inspect = inspect
 
 module.exports = evaluate
+


inspect = (fn) ->
  code = "a=#{fn.toString()}"
  _(esprima.parse(code)).inspect()

evaluate = (fn) ->
  code = "a=#{fn.toString()}"
  ast = _(esprima.parse(code)).traverse((node) ->
    if _(node.type).isEqual('CallExpression') and
       _(macros).has(node.callee.name)
      macros[node.callee.name](node)

_          = require 'underscore'
util       = require 'util'

inspectAst = (tree) ->
  console.log(util.inspect(tree, {colors:true, depth:null}))
  tree

