aboutsummaryrefslogtreecommitdiff
path: root/src/interp/slam.boot
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2011-02-03 17:14:17 +0000
committerdos-reis <gdr@axiomatics.org>2011-02-03 17:14:17 +0000
commit8ea3a4b4aae5c6c1287bc4e48a2fcdd33a51a7f5 (patch)
tree997b63dfc2408dbce2bed4b98f5f9cf9e08e0de0 /src/interp/slam.boot
parentd31c116e4080b085554c7f5cad72851cdb0e7b16 (diff)
downloadopen-axiom-8ea3a4b4aae5c6c1287bc4e48a2fcdd33a51a7f5.tar.gz
* interp/c-util.boot: Replace COND with %when throught.
Use %otherwise instead of %true where appropriate. * interp/define.boot: Likewise. * interp/functor.boot: Likewise. * interp/g-opt.boot: Likewise. * interp/i-code.boot: Likewise. * interp/i-output.boot: Likewise. * interp/i-spec1.boot: Likewise. * interp/i-spec2.boot: Likewise. * interp/i-util.boot: Likewise. * interp/info.boot: Likewise. * interp/modemap.boot: Likewise. * interp/nruncomp.boot: Likewise. * interp/pspad1.boot: Likewise. * interp/pspad2.boot: Likewise. * interp/slam.boot: Likewise. * interp/wi1.boot: Likewise. * interp/wi2.boot: Likewise. * interp/compiler.boot (canReturn): Don't test for COND anymore.
Diffstat (limited to 'src/interp/slam.boot')
-rw-r--r--src/interp/slam.boot6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/interp/slam.boot b/src/interp/slam.boot
index 7bc05b3b..9855b201 100644
--- a/src/interp/slam.boot
+++ b/src/interp/slam.boot
@@ -46,13 +46,13 @@ isRecurrenceRelation(op,body,minivectorName) ==
-- p1,...,pk respectively; body has #2,#3,... in place of
-- f(k-1),f(k-2),...
- body isnt ['COND,:pcl] => false
+ body isnt ['%when,:pcl] => false
-- body should have a conditional expression which
-- gives k boundary values, one general term plus possibly an
-- "out of domain" condition
--pcl is [:.,[ ''T,:mess]] and not (CONTAINED('throwMessage,mess) or
-- CONTAINED('throwKeyedMsg,mess)) => NIL
- pcl := [x for x in pcl | not (x is [''T,:mess] and
+ pcl := [x for x in pcl | not (x is ['%otherwise,:mess] and
(CONTAINED('throwMessage,mess) or
CONTAINED('throwKeyedMsg,mess)))]
integer := eval $Integer
@@ -125,7 +125,7 @@ mkDiffAssoc(op,body,k,sharpPosition,sharpArg,diffSlot,vecname) ==
-- ( ((f (,DIFFERENCE #1 1)) . #2) ((f (,DIFFERENCE #1 2)) . #3) ...)
-- but also checking that all difference values lie in 1..k
atom body => nil
- body is ['COND,:pl] =>
+ body is ['%when,:pl] =>
"union"/[mkDiffAssoc(op,c,k,sharpPosition,sharpArg,diffSlot,vecname) for [p,c] in pl]
body is [fn,:argl] =>
(fn = op) and argl.(sharpPosition-1) is