aboutsummaryrefslogtreecommitdiff
path: root/evaluator/evaluator.go
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2018-03-25 01:50:10 +0100
committerDimitri Sokolyuk <demon@dim13.org>2018-03-25 01:50:10 +0100
commite5ed6e13a4adbbe61317194af36c33c82b33c90f (patch)
tree790b5c954959ac852f0072f8bb2bd3137a4dac48 /evaluator/evaluator.go
parent88efa3eb20001d1dc23e6b5a8413ea7adf10294e (diff)
lost chapter
Diffstat (limited to 'evaluator/evaluator.go')
-rw-r--r--evaluator/evaluator.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/evaluator/evaluator.go b/evaluator/evaluator.go
index a6b21cc..6ea4b01 100644
--- a/evaluator/evaluator.go
+++ b/evaluator/evaluator.go
@@ -82,6 +82,9 @@ func Eval(node ast.Node, env *object.Environment) object.Object {
return &object.Function{Parameters: params, Env: env, Body: body}
case *ast.CallExpression:
+ if node.Function.TokenLiteral() == "quote" {
+ return quote(node.Arguments[0], env)
+ }
function := Eval(node.Function, env)
if isError(function) {
return function