proc eval(ast: MalType, env: var Env): MalType =
case ast.kind
of List:
+ if ast.list.len == 0: return ast
let
a0 = ast.list[0]
a1 = ast.list[1]
result = a2.eval(letEnv)
else:
let el = ast.eval_ast(env)
- result = el.list[0].fun(el.list[1 .. -1])
+ result = el.list[0].fun(el.list[1 .. ^1])
else:
result = ast.eval_ast(env)