an open source interpreter for the Kernel Programming Language.
git clone http://git.hanabi.in/repos/klisp.git
Log | Files | Refs | README

commit 7b1baf7ba55e0be06ec609b7614d2091aceac676
parent 7f7e0f672136167bc67751bcac49ffebe23556eb
Author: Andres Navarro <canavarro82@gmail.com>
Date:   Tue, 22 Nov 2011 02:20:11 -0300

Bugfix: in letrec* and letrec, do_let didn't pass on the recp param to the next cont.

Msrc/kgenvironments.c | 2+-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/kgenvironments.c b/src/kgenvironments.c @@ -203,7 +203,7 @@ void do_let(klisp_State *K, TValue *xparams, TValue obj) TValue new_cont = kmake_continuation(K, kget_cc(K), do_let, 7, sname, kcar(bindings), kcdr(bindings), kcdr(exprs), - new_env, b2tv(false), body); + new_env, b2tv(recp), body); krooted_tvs_pop(K); kset_cc(K, new_cont); ktail_eval(K, kcar(exprs), recp? new_env : env);