aboutsummaryrefslogtreecommitdiff
path: root/src/interp/parse.boot
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2009-07-13 22:36:51 +0000
committerdos-reis <gdr@axiomatics.org>2009-07-13 22:36:51 +0000
commitc6efaa6ac903c17bd85eb51e672f80e9baa0ebc4 (patch)
treef0543ea203bea22c063a517ca7136ed10a486be1 /src/interp/parse.boot
parent361eca1c035acd57ad9f0ac1133fb641eabe122b (diff)
downloadopen-axiom-c6efaa6ac903c17bd85eb51e672f80e9baa0ebc4.tar.gz
* interp/metalex.lisp: "break" is now a keyword.
* interp/fnewmeta.lisp (PARSE-Jump): New. * interp/compiler.boot (compAtom): Dipatch compilation of "break" and "iterate" to... (compBreak): ... here (compIterate): and here. (jumpFromLoop): New. (compRepeatOrCollect): Initialize $lookKind, $iterateCount, and $breakCount. Set exit point for loop bodies with 'iterate' expressions. * interp/parse.boot (parseAtom): Remove. (parseTran): Adjust. * algebra/outform.spad.pamphlet: Tidy. * interp/c-util.boot ($loopKind): Declare. ($repeatBodyLabel): Likewise. ($iterateCount): Likewise. ($breakCount): Likewise.
Diffstat (limited to 'src/interp/parse.boot')
-rw-r--r--src/interp/parse.boot8
1 files changed, 1 insertions, 7 deletions
diff --git a/src/interp/parse.boot b/src/interp/parse.boot
index 2a93222d..e656c023 100644
--- a/src/interp/parse.boot
+++ b/src/interp/parse.boot
@@ -70,7 +70,7 @@ parseTransform x ==
parseTran: %ParseForm -> %Form
parseTran x ==
- atom x => parseAtom x
+ atom x => x
[op,:argl]:= x
u := g(op) where g op == (op is ["elt",op,x] => g x; op)
u="construct" =>
@@ -87,12 +87,6 @@ parseType t ==
parseTypeList l ==
mapInto(l, function parseType)
-parseAtom: %Atom -> %Form
-parseAtom x ==
- -- next line for compatibility with new compiler
- x = "break" => parseLeave ["leave","$NoValue"]
- x
-
parseTranList: %List -> %List
parseTranList l ==
atom l => parseTran l