aboutsummaryrefslogtreecommitdiff
path: root/js/step3_env.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/step3_env.js')
-rw-r--r--js/step3_env.js10
1 files changed, 5 insertions, 5 deletions
diff --git a/js/step3_env.js b/js/step3_env.js
index 1f5efb7..ca8f818 100644
--- a/js/step3_env.js
+++ b/js/step3_env.js
@@ -47,7 +47,7 @@ function _EVAL(ast, env) {
case "let*":
var let_env = new Env(env);
for (var i=0; i < a1.length; i+=2) {
- let_env.set(a1[i].value, EVAL(a1[i+1], let_env));
+ let_env.set(a1[i], EVAL(a1[i+1], let_env));
}
return EVAL(a2, let_env);
default:
@@ -70,10 +70,10 @@ function PRINT(exp) {
var repl_env = new Env();
var rep = function(str) { return PRINT(EVAL(READ(str), repl_env)); };
-repl_env.set('+', function(a,b){return a+b;});
-repl_env.set('-', function(a,b){return a-b;});
-repl_env.set('*', function(a,b){return a*b;});
-repl_env.set('/', function(a,b){return a/b;});
+repl_env.set(types._symbol('+'), function(a,b){return a+b;});
+repl_env.set(types._symbol('-'), function(a,b){return a-b;});
+repl_env.set(types._symbol('*'), function(a,b){return a*b;});
+repl_env.set(types._symbol('/'), function(a,b){return a/b;});
// repl loop
if (typeof require !== 'undefined' && require.main === module) {