diff options
author | dos-reis <gdr@axiomatics.org> | 2007-09-10 03:30:13 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2007-09-10 03:30:13 +0000 |
commit | b8d7cd431a779551cf2c6eac94f6b4463db97273 (patch) | |
tree | e52ce35bd564ae64db8623410f6414f0d16f72ea /src/interp/postprop.lisp | |
parent | 383b2385eb1f3fb00f5856a2ddf593ec42c03189 (diff) | |
download | open-axiom-b8d7cd431a779551cf2c6eac94f6b4463db97273.tar.gz |
* Makefile.pamphlet (DEP): Adjust path to comp.lisp.
(${DEPSYS}): Likewise for def.lisp, bootlex.lisp, postprop.lisp,
metalex.lisp. Use |compileLispFile| instead of COMPILE-FILE.
* Makefile.in: Regenerate.
* union.lisp: New.
* union.lisp.pamphlet: Move content to union.lisp. Remove.
* obey.lisp: New.
* obey.lisp.pamphlet: Move content to obey.lisp. Remove.
* nspadaux.lisp: New.
* nspadaux.lisp.pamphlet: Move content to nspadaux.lisp. Remove.
* fname.lisp: New.
* fname.lisp.pamphlet: Move content to fname.lisp. Remove.
* def.lisp: New.
* def.lisp.pamphlet: Move content to def.lisp. Remove.
* comp.lisp: New.
* comp.lisp.pamphlet: Move content to comp.lisp. Remove.
* bootlex.lisp: New.
* bootlex.lisp.pamphlet: Move content to bootlex.lisp. Remove.
* postprop.lisp: New.
* postprop.lisp.pamphlet: Move content to postprop.lisp. Remove.
* metalex.lisp: New.
* metalex.lisp.pamphlet: Move content to metalex.lisp. Remove.
* parsing.lisp: New.
* parsing.lisp.pamphlet: Move content to parsing.lisp. Remove.
Diffstat (limited to 'src/interp/postprop.lisp')
-rw-r--r-- | src/interp/postprop.lisp | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/src/interp/postprop.lisp b/src/interp/postprop.lisp new file mode 100644 index 00000000..921c58c3 --- /dev/null +++ b/src/interp/postprop.lisp @@ -0,0 +1,130 @@ +;; Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +;; All rights reserved. +;; +;; Redistribution and use in source and binary forms, with or without +;; modification, are permitted provided that the following conditions are +;; met: +;; +;; - Redistributions of source code must retain the above copyright +;; notice, this list of conditions and the following disclaimer. +;; +;; - Redistributions in binary form must reproduce the above copyright +;; notice, this list of conditions and the following disclaimer in +;; the documentation and/or other materials provided with the +;; distribution. +;; +;; - Neither the name of The Numerical ALgorithms Group Ltd. nor the +;; names of its contributors may be used to endorse or promote products +;; derived from this software without specific prior written permission. +;; +;; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +;; IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +;; TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +;; PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER +;; OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +;; EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +;; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +;; PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +;; LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +(in-package "BOOT") + +(mapcar #'(lambda (x) (MAKEPROP (CAR X) '|special| (CADR X))) + '((LET |compSetq|) (|Join| |compJoin|) + (|Record| |compCat|) + (|Union| |compCat|) (\: |compColon|) + (\:\: |compCoerce|) (CAPSULE |compCapsule|) + (|has| |compHas|) (|is| |compIs|) + (|add| |compAdd|) (CONS |compCons|) + (IF |compIf|) (|exit| |compExit|) + (|return| |compReturn|) (|leave| |compLeave|) + (|elt| |compElt|) (DEF |compDefine|) + (MDEF |compMacro|) (|SubsetCategory| |compSubsetCategory|) + (|SubDomain| |compSubDomain|) + (|case| |compCase|) (|String| |compString|) + (|RecordCategory| |compConstructorCategory|) + (|ListCategory| |compConstructorCategory|) + (|VectorCategory| |compConstructorCategory|) + (|UnionCategory| |compConstructorCategory|) + (CATEGORY |compCategory|) + (COLLECT |compRepeatOrCollect|) + (COLLECTV |compCollectV|) + (REPEAT |compRepeatOrCollect|) + (REDUCE |compReduce|) (|where| |compWhere|) + (\| |compSuchthat|) (|construct| |compConstruct|) + (SEQ |compSeq|) (SETQ |compSetq|) + (VECTOR |compVector|))) + +(mapcar #'(lambda (x) (MAKEPROP (CAR X) '|postTran| (second X))) + '((|with| |postWith|) + (|Scripts| |postScripts|) + (/ |postSlash|) + (|construct| |postConstruct|) + (|Block| |postBlock|) + (QUOTE |postQUOTE|) + (COLLECT |postCollect|) + (\:BF\: |postBigFloat|) + (|in| |postin|) ; the infix operator version of i + (IN |postIn|) ; the iterator form of i + (REPEAT |postRepeat|) + (|TupleCollect| |postTupleCollect|) + (|add| |postAdd|) + (|Reduce| |postReduce|) + (\, |postComma|) + (\; |postSemiColon|) + (|where| |postWhere|) + (\: |postColon|) + (\@ |postAtSign|) + (|pretend| |postPretend|) + (|if| |postIf|) + (|Join| |postJoin|) + (|Signature| |postSignature|) + (CATEGORY |postCategory|) + (== |postDef|) + (==> |postMDef|) + (-> |postMapping|) + (=> |postExit|) + (|Tuple| |postTuple|))) + +(mapcar #'(lambda (x) (MAKEPROP (CAR X) '|parseTran| (CADR X))) + '((\<= |parseLessEqual|) + (\> |parseGreaterThan|) + (\>= |parseGreaterEqual|) + ($\<= |parseDollarLessEqual|) + ($\> |parseDollarGreaterThan|) + ($\>= |parseDollarGreaterEqual|) + ($^= |parseDollarNotEqual|) + (^ |parseNot|) + (^= |parseNotEqual|) + (\: |parseColon|) + (\:\: |parseCoerce|) + (\@ |parseAtSign|) + (|and| |parseAnd|) + (CATEGORY |parseCategory|) + (|construct| |parseConstruct|) + (DEF |parseDEF|) + (|eqv| |parseEquivalence|) + (|exit| |parseExit|) + (|has| |parseHas|) + (IF |parseIf|) + (|implies| |parseImplies|) + (IN |parseIn|) + (INBY |parseInBy|) + (|is| |parseIs|) + (|isnt| |parseIsnt|) + (|Join| |parseJoin|) + (|leave| |parseLeave|) + (LET |parseLET|) + (LETD |parseLETD|) + (MDEF |parseMDEF|) + (|not| |parseNot|) + (|or| |parseOr|) + (|pretend| |parsePretend|) + (|return| |parseReturn|) + (SEQ |parseSeq|) + (VCONS |parseVCONS|) + (|where| |parseWhere|) + (|xor| |parseExclusiveOr|))) |