def macroexpand(ast, env):
while is_macro_call(ast, env):
mac = env.get(ast[0])
- ast = macroexpand(mac(*ast[1:]), env)
+ ast = mac(*ast[1:])
return ast
def eval_ast(ast, env):
def macroexpand(ast, env):
while is_macro_call(ast, env):
mac = env.get(ast[0])
- ast = macroexpand(mac(*ast[1:]), env)
+ ast = mac(*ast[1:])
return ast
def eval_ast(ast, env):
def macroexpand(ast, env):
while is_macro_call(ast, env):
mac = env.get(ast[0])
- ast = macroexpand(mac(*ast[1:]), env)
+ ast = mac(*ast[1:])
return ast
def eval_ast(ast, env):