diff options
author | dos-reis <gdr@axiomatics.org> | 2011-10-01 22:21:23 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2011-10-01 22:21:23 +0000 |
commit | 496ca25659180bb29cc5fea2f3c0337695d742d3 (patch) | |
tree | fe020f749b8247903bc66b576c273b61c5aa46ae /src/boot/strap/parser.clisp | |
parent | 73374b314b15f2a313718d0e347a1050d1d1a405 (diff) | |
download | open-axiom-496ca25659180bb29cc5fea2f3c0337695d742d3.tar.gz |
* boot/parser.boot (bpImport): Accept long names for used namespaces.
* boot/translator.boot (packageBody): Tidy.
(translateToplevel): Likewise.
(getIntermediateLispFile): Likewise.
* interp/sys-os.boot: Import System.Foreign.
Diffstat (limited to 'src/boot/strap/parser.clisp')
-rw-r--r-- | src/boot/strap/parser.clisp | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/src/boot/strap/parser.clisp b/src/boot/strap/parser.clisp index 7b470d05..3d8d15f8 100644 --- a/src/boot/strap/parser.clisp +++ b/src/boot/strap/parser.clisp @@ -440,15 +440,19 @@ (RETURN (COND ((|bpEqKey| 'IMPORT) - (COND ((|bpNamespace|) (|bpPush| (|%Import| (|bpPop1|)))) - (T (SETQ |a| (|bpState|)) (OR (|bpName|) (|bpTrap|)) - (COND - ((|bpEqPeek| 'COLON) (|bpRestore| |a|) - (AND (OR (|bpSignature|) (|bpTrap|)) - (OR (|bpEqKey| 'FOR) (|bpTrap|)) - (OR (|bpName|) (|bpTrap|)) - (|bpPush| (|%ImportSignature| (|bpPop1|) (|bpPop1|))))) - (T (|bpPush| (|%Import| (|bpPop1|)))))))) + (COND + ((|bpEqKey| 'NAMESPACE) + (OR + (AND (|bpLeftAssoc| '(DOT) #'|bpName|) + (|bpPush| (|%Import| (|bfNamespace| (|bpPop1|))))) + (|bpTrap|))) + (T (SETQ |a| (|bpState|)) (OR (|bpName|) (|bpTrap|)) + (COND + ((|bpEqPeek| 'COLON) (|bpRestore| |a|) + (AND (OR (|bpSignature|) (|bpTrap|)) + (OR (|bpEqKey| 'FOR) (|bpTrap|)) (OR (|bpName|) (|bpTrap|)) + (|bpPush| (|%ImportSignature| (|bpPop1|) (|bpPop1|))))) + (T (|bpPush| (|%Import| (|bpPop1|)))))))) (T NIL))))) (DEFUN |bpNamespace| () |