From 8bd29deee2d75510dc62408582ac8449df93a166 Mon Sep 17 00:00:00 2001 From: dos-reis Date: Sat, 8 Dec 2007 20:52:48 +0000 Subject: Add support for quasiquotation. * compiler.boot (compileQuasiquote): New function. * fnewmeta.lisp (|PARSE-Enclosure|): Parse quasiquotes too. * i-intern.boot (mkAtree3): Don't evaluate arguments to quasiquote. * i-spec1.boot ($specialOps): Register [||]. (up[||]): Handle quasiquotes. * newaux.lisp: Register `[|' and `|]' as new glyphs. * pf2sex.boot ($insideApplication): Now count the nesting level of application forms. ($insideQuasiquote): New. Count nesting level of quasiquotes. (pfFinishApplication): Ensure application form nesting level is properly decreased. (pfApplication2Sex): Use it. (pfQuasiquotation2Sex): Transform quasiquote forms. (pf2Sex1): Use it. * sys-constants.boot ($Syntax): New. --- src/interp/sys-constants.boot | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/interp/sys-constants.boot') diff --git a/src/interp/sys-constants.boot b/src/interp/sys-constants.boot index 345e665c..0ce969c6 100644 --- a/src/interp/sys-constants.boot +++ b/src/interp/sys-constants.boot @@ -291,6 +291,10 @@ $Void == $Any == '(Any) +++ The Syntax domain constructor form +$Syntax == + '(Syntax) + ++ Boolean domain constructor form $Boolean == '(Boolean) -- cgit v1.2.3