From c990d37be74f452d1a8bcb2b0b1dc133704c0a93 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Tue, 16 May 2023 06:34:31 -0700 Subject: New special operator: compiler-let * eval.c (compiler_let_s): New symbol variable. (op_let): Recognize compiler-let for sequential binding. (do_expand): Traverse and diagnose compiler-let form. (eval_init): Initialize compiler_let_s and register the interpreted version of the operator. * stdlib/compiler.tl (compiler compile): Handle compiler-let form. (compiler comp-compiler-let): New method. (no-dvbind-eval): New function. * autoload.c (compiler-set-entries): Intern the compiler-let symbol in the user package. * txr.1: Documented. * stdlib/doc-syms.tl: Updated. --- autoload.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'autoload.c') diff --git a/autoload.c b/autoload.c index 002ddee4..0f0f3039 100644 --- a/autoload.c +++ b/autoload.c @@ -660,7 +660,7 @@ static val compiler_set_entries(val fun) lit("compile-toplevel"), lit("compile"), lit("compile-file"), lit("compile-update-file"), lit("with-compilation-unit"), lit("dump-compiled-objects"), - lit("with-compile-opts"), + lit("with-compile-opts"), lit("compiler-let"), nil }; val vname[] = { -- cgit v1.2.3