From c6efaa6ac903c17bd85eb51e672f80e9baa0ebc4 Mon Sep 17 00:00:00 2001 From: dos-reis Date: Mon, 13 Jul 2009 22:36:51 +0000 Subject: * 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. --- src/interp/metalex.lisp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/interp/metalex.lisp') diff --git a/src/interp/metalex.lisp b/src/interp/metalex.lisp index 27b82522..0aaf9d70 100644 --- a/src/interp/metalex.lisp +++ b/src/interp/metalex.lisp @@ -573,7 +573,7 @@ empty (if File-Closed (return nil)) '(|or| |and| |isnt| |is| |when| |where| |forall| |exist| |has| |with| |add| |case| |in| |by| |pretend| |mod| |exquo| |div| |quo| |else| |rem| |then| |suchthat| - |if| |yield| |iterate| |from| |exit| |leave| |return| + |if| |yield| |iterate| |break| |from| |exit| |leave| |return| |not| |unless| |repeat| |until| |while| |for| |import| |inline|) "Alphabetic literal strings occurring in the New Meta code constitute -- cgit v1.2.3