X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=blobdiff_plain;f=code%2Flambda.js;h=83ae7c4aea7d65d6250e5be5449a69ac0da4184f;hp=d4e3a5ef8ed7334e6e0aedd3cc524235830156f0;hb=911d868126d0b91047b362cb909cdfeb503cd16b;hpb=9c7e038237948882afa16677f9b0d5a8a530b07a diff --git a/code/lambda.js b/code/lambda.js index d4e3a5ef..83ae7c4a 100644 --- a/code/lambda.js +++ b/code/lambda.js @@ -423,6 +423,7 @@ function reduce(expr, eta, cbv) { return expr.eval_cbv(cbv > 1); } else { // return expr.eval_loop([], eta); + // using trampoline to reduce call stack overflows var to_eval = expr, res = [[], eta]; while (to_eval !== null) { res = to_eval.eval_loop.apply(to_eval, res);