From 373d251b4dd5153c6909898dc225d37d4948e3d6 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Mon, 1 Sep 2008 23:48:10 -0700 Subject: [PATCH] disable start-stack in compiled code * module/language/scheme/translate.scm (primitive-syntax-table): Disable semantics of start-stack in compiled code. I think start-stack semantics aren't bad, but they don't have vm-based implementations at this point. --- module/language/scheme/translate.scm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/module/language/scheme/translate.scm b/module/language/scheme/translate.scm index 31df82580..31c13e30d 100644 --- a/module/language/scheme/translate.scm +++ b/module/language/scheme/translate.scm @@ -56,7 +56,8 @@ ;; definition forward-declared them (and (variable-bound? var) (variable-ref var))))))) (cond - ((or (primitive-macro? val) (eq? val eval-case)) + ((or (primitive-macro? val) + (eq? val eval-case)) (or (assq-ref primitive-syntax-table head) (syntax-error #f "unhandled primitive macro" head))) @@ -291,7 +292,11 @@ (if (memq (if toplevel? 'load-toplevel 'evaluate) keys) (append runtime body) runtime))) - (else (syntax-error l "bad eval-case clause" (car in)))))))))))))) + (else (syntax-error l "bad eval-case clause" (car in)))))))))))) + + ;; FIXME: make this actually do something + (start-stack + ((,tag ,expr) (retrans expr))))) (define (trans-quasiquote e l x level) (cond ((not (pair? x)) x)