diff options
author | dos-reis <gdr@axiomatics.org> | 2008-07-11 00:10:17 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2008-07-11 00:10:17 +0000 |
commit | 419a88b7d6a8c0248c17c47a9a46b0aab0b5936f (patch) | |
tree | 64531f1f78bf1e38f86af1322d94ee101b022057 /src/interp | |
parent | aa7e3e2f0d8bbcafe488f536faa86ff9581efef0 (diff) | |
download | open-axiom-419a88b7d6a8c0248c17c47a9a46b0aab0b5936f.tar.gz |
* interp/compiler.boot (compQuote): Restrict quoting to literal
symbols.
* algebra/any.spad.pamphlet: Use nil for empty list.
* algebra/boolean.spad.pamphlet: Fix quoting.
Diffstat (limited to 'src/interp')
-rw-r--r-- | src/interp/compiler.boot | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot index 10657288..1d9686bc 100644 --- a/src/interp/compiler.boot +++ b/src/interp/compiler.boot @@ -828,7 +828,11 @@ compConstruct(form is ["construct",:l],m,e) == (T:= compVector(l,["Vector",CADR y],e)) and (T':= convert(T,m)) => return T' -compQuote(expr,m,e) == [expr,m,e] +++ Compile a literal (quoted) symbol. +compQuote: (%Form,%Mode,%Env) -> %Maybe %Triple +compQuote(expr,m,e) == + expr is ["QUOTE",x] and SYMBOLP x => convert([expr,$Symbol,e],m) + stackAndThrow('"%1b is not a literal symbol.",[x]) compList: (%Form,%Mode,%Env) -> %Maybe %Triple compList(l,m is ["List",mUnder],e) == |