aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2010-04-20 14:28:31 +0000
committerdos-reis <gdr@axiomatics.org>2010-04-20 14:28:31 +0000
commit6fa5b85a7a68ad4422b98eb982a2a44998d6ee53 (patch)
tree638222da14ed9aea4d6ad13612a0abc207122692 /src
parent6d9ec581fcfbc307730e3da774ad2c63c5dfe9b7 (diff)
downloadopen-axiom-6fa5b85a7a68ad4422b98eb982a2a44998d6ee53.tar.gz
* interp/compiler.boot (joinIntegerModes): New.
(compIntegerValue): Likewise. (compStepIterator): Likewise. (compIterate): Use it.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog7
-rw-r--r--src/algebra/strap/BOOLEAN.lsp11
-rw-r--r--src/algebra/strap/DIFRING-.lsp20
-rw-r--r--src/algebra/strap/FFIELDC-.lsp133
-rw-r--r--src/algebra/strap/ILIST.lsp237
-rw-r--r--src/algebra/strap/ISTRING.lsp191
-rw-r--r--src/algebra/strap/LSAGG-.lsp70
-rw-r--r--src/algebra/strap/STAGG-.lsp187
-rw-r--r--src/algebra/strap/SYMBOL.lsp46
-rw-r--r--src/algebra/strap/URAGG-.lsp185
-rw-r--r--src/interp/compiler.boot95
11 files changed, 601 insertions, 581 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 08dc77c6..0178e447 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,10 @@
+2010-04-20 Gabriel Dos Reis <gdr@cs.tamu.edu>
+
+ * interp/compiler.boot (joinIntegerModes): New.
+ (compIntegerValue): Likewise.
+ (compStepIterator): Likewise.
+ (compIterate): Use it.
+
2010-04-18 Alfredo Portes <doyenatccny@gmail.com>
* hyper/Makefile.in : Remove linking to X11 library for htadd.
diff --git a/src/algebra/strap/BOOLEAN.lsp b/src/algebra/strap/BOOLEAN.lsp
index 4c78aa4b..eaf90f62 100644
--- a/src/algebra/strap/BOOLEAN.lsp
+++ b/src/algebra/strap/BOOLEAN.lsp
@@ -205,13 +205,14 @@
|before?| 136 |and| 142 |\\/| 148 >= 154 > 160 = 166 <=
172 < 178 |/\\| 184)
'NIL
- (CONS (|makeByteWordVec2| 1 '(0 0 0 0 0 0 0 0 0))
- (CONS '#(NIL |OrderedSet&| NIL NIL |Logic&|
- |SetCategory&| NIL |BasicType&| NIL)
+ (CONS (|makeByteWordVec2| 1 '(0 0 0 0 0 0 0 0 0 0 0))
+ (CONS '#(NIL |OrderedSet&| NIL NIL NIL |Logic&|
+ |SetCategory&| NIL NIL |BasicType&| NIL)
(CONS '#((|OrderedFinite|) (|OrderedSet|)
(|PropositionalLogic|) (|Finite|)
- (|Logic|) (|SetCategory|)
- (|ConvertibleTo| 33) (|BasicType|)
+ (|BooleanLogic|) (|Logic|)
+ (|SetCategory|) (|ConvertibleTo| 33)
+ (|Type|) (|BasicType|)
(|CoercibleTo| 35))
(|makeByteWordVec2| 38
'(1 25 18 0 26 0 27 0 29 0 25 0 31 2 0
diff --git a/src/algebra/strap/DIFRING-.lsp b/src/algebra/strap/DIFRING-.lsp
index b3562e91..1c9f8444 100644
--- a/src/algebra/strap/DIFRING-.lsp
+++ b/src/algebra/strap/DIFRING-.lsp
@@ -28,7 +28,7 @@
(EXIT |r|)))))
(DEFUN |DIFRING-;D;SNniS;3| (|r| |n| $)
- (SPADCALL |r| |n| (|getShellEntry| $ 14)))
+ (SPADCALL |r| |n| (|getShellEntry| $ 11)))
(DEFUN |DifferentialRing&| (|#1|)
(PROG (|dv$1| |dv$| $ |pv$|)
@@ -36,7 +36,7 @@
(PROGN
(LETT |dv$1| (|devaluate| |#1|) . #0=(|DifferentialRing&|))
(LETT |dv$| (LIST '|DifferentialRing&| |dv$1|) . #0#)
- (LETT $ (|newShell| 16) . #0#)
+ (LETT $ (|newShell| 13) . #0#)
(|setShellEntry| $ 0 |dv$|)
(|setShellEntry| $ 3
(LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#))
@@ -46,16 +46,14 @@
(MAKEPROP '|DifferentialRing&| '|infovec|
(LIST '#(NIL NIL NIL NIL NIL NIL (|local| |#1|)
- (0 . |differentiate|) |DIFRING-;D;2S;1| (|SingleInteger|)
- (5 . |One|) (|NonNegativeInteger|) (9 . |One|)
- |DIFRING-;differentiate;SNniS;2| (13 . |differentiate|)
- |DIFRING-;D;SNniS;3|)
- '#(|differentiate| 19 D 25) 'NIL
+ (0 . |differentiate|) |DIFRING-;D;2S;1|
+ (|NonNegativeInteger|) |DIFRING-;differentiate;SNniS;2|
+ (5 . |differentiate|) |DIFRING-;D;SNniS;3|)
+ '#(|differentiate| 11 D 17) 'NIL
(CONS (|makeByteWordVec2| 1 'NIL)
(CONS '#()
(CONS '#()
- (|makeByteWordVec2| 15
- '(1 6 0 0 7 0 9 0 10 0 11 0 12 2 6 0 0
- 11 14 2 0 0 0 11 13 2 0 0 0 11 15 1 0
- 0 0 8)))))
+ (|makeByteWordVec2| 12
+ '(1 6 0 0 7 2 6 0 0 9 11 2 0 0 0 9 10 2
+ 0 0 0 9 12 1 0 0 0 8)))))
'|lookupComplete|))
diff --git a/src/algebra/strap/FFIELDC-.lsp b/src/algebra/strap/FFIELDC-.lsp
index 73b5852e..47393a53 100644
--- a/src/algebra/strap/FFIELDC-.lsp
+++ b/src/algebra/strap/FFIELDC-.lsp
@@ -234,7 +234,7 @@
(SEQ (LETT |faclist| (SPADCALL (|getShellEntry| $ 56))
|FFIELDC-;discreteLog;SNni;11|)
(LETT |a| |b| |FFIELDC-;discreteLog;SNni;11|)
- (LETT |gen| (SPADCALL (|getShellEntry| $ 67))
+ (LETT |gen| (SPADCALL (|getShellEntry| $ 65))
|FFIELDC-;discreteLog;SNni;11|)
(EXIT (COND
((SPADCALL |b| |gen| (|getShellEntry| $ 63))
@@ -283,11 +283,11 @@
|FFIELDC-;discreteLog;SNni;11|)
(LETT |exptable|
(SPADCALL |fac|
- (|getShellEntry| $ 69))
+ (|getShellEntry| $ 67))
|FFIELDC-;discreteLog;SNni;11|)
(LETT |n|
(SPADCALL |exptable|
- (|getShellEntry| $ 70))
+ (|getShellEntry| $ 68))
|FFIELDC-;discreteLog;SNni;11|)
(LETT |c|
(SPADCALL |a| |exp|
@@ -315,7 +315,7 @@
(SPADCALL |c|
(|getShellEntry| $ 11))
|exptable|
- (|getShellEntry| $ 73))
+ (|getShellEntry| $ 71))
|FFIELDC-;discreteLog;SNni;11|)
(EXIT
(COND
@@ -341,7 +341,7 @@
(|getShellEntry| $
58))
(|getShellEntry| $
- 79))
+ 77))
|FFIELDC-;discreteLog;SNni;11|)))))
(LETT |i| (QSADD1 |i|)
|FFIELDC-;discreteLog;SNni;11|)
@@ -364,7 +364,7 @@
(|getShellEntry| $
58))
(|getShellEntry| $
- 79))
+ 77))
|FFIELDC-;discreteLog;SNni;11|))))
('T
(|error|
@@ -385,12 +385,12 @@
(SEQ (EXIT (COND
((SPADCALL |b| (|getShellEntry| $ 16))
(SEQ (SPADCALL "discreteLog: logarithm of zero"
- (|getShellEntry| $ 85))
+ (|getShellEntry| $ 83))
(EXIT (CONS 1 "failed"))))
((SPADCALL |logbase| (|getShellEntry| $ 16))
(SEQ (SPADCALL
"discreteLog: logarithm to base zero"
- (|getShellEntry| $ 85))
+ (|getShellEntry| $ 83))
(EXIT (CONS 1 "failed"))))
((SPADCALL |b| |logbase| (|getShellEntry| $ 63))
(CONS 0 1))
@@ -405,14 +405,14 @@
(|getShellEntry| $ 19)))))
(SEQ (SPADCALL
"discreteLog: second argument not in cyclic group generated by first argument"
- (|getShellEntry| $ 85))
+ (|getShellEntry| $ 83))
(EXIT (CONS 1 "failed"))))
('T
(SEQ (LETT |faclist|
(SPADCALL
(SPADCALL |groupord|
- (|getShellEntry| $ 89))
- (|getShellEntry| $ 91))
+ (|getShellEntry| $ 87))
+ (|getShellEntry| $ 89))
|FFIELDC-;discreteLog;2SU;12|)
(LETT |a| |b|
|FFIELDC-;discreteLog;2SU;12|)
@@ -460,7 +460,7 @@
(SPADCALL |a| |exp|
(|getShellEntry| $ 58))
|fac|
- (|getShellEntry| $ 93))
+ (|getShellEntry| $ 91))
|FFIELDC-;discreteLog;2SU;12|)
(EXIT
(COND
@@ -489,7 +489,7 @@
(- |rho|)
(|getShellEntry| $
58))
- (|getShellEntry| $ 79))
+ (|getShellEntry| $ 77))
|FFIELDC-;discreteLog;2SU;12|)))))))
(LETT |t| (QSADD1 |t|)
|FFIELDC-;discreteLog;2SU;12|)
@@ -501,25 +501,25 @@
#2# (EXIT #2#)))))
(DEFUN |FFIELDC-;squareFreePolynomial| (|f| $)
- (SPADCALL |f| (|getShellEntry| $ 98)))
+ (SPADCALL |f| (|getShellEntry| $ 96)))
(DEFUN |FFIELDC-;factorPolynomial| (|f| $)
- (SPADCALL |f| (|getShellEntry| $ 100)))
+ (SPADCALL |f| (|getShellEntry| $ 98)))
(DEFUN |FFIELDC-;factorSquareFreePolynomial| (|f| $)
(PROG (|flist| |u| #0=#:G1519 #1=#:G1508 #2=#:G1506 #3=#:G1507)
(RETURN
(SEQ (COND
- ((SPADCALL |f| (|spadConstant| $ 101)
- (|getShellEntry| $ 102))
- (|spadConstant| $ 103))
+ ((SPADCALL |f| (|spadConstant| $ 99)
+ (|getShellEntry| $ 100))
+ (|spadConstant| $ 101))
('T
(SEQ (LETT |flist|
- (SPADCALL |f| T (|getShellEntry| $ 107))
+ (SPADCALL |f| T (|getShellEntry| $ 105))
|FFIELDC-;factorSquareFreePolynomial|)
(EXIT (SPADCALL
(SPADCALL (QCAR |flist|)
- (|getShellEntry| $ 108))
+ (|getShellEntry| $ 106))
(PROGN
(LETT #3# NIL
|FFIELDC-;factorSquareFreePolynomial|)
@@ -538,13 +538,13 @@
(PROGN
(LETT #1#
(SPADCALL (QCAR |u|) (QCDR |u|)
- (|getShellEntry| $ 109))
+ (|getShellEntry| $ 107))
|FFIELDC-;factorSquareFreePolynomial|)
(COND
(#3#
(LETT #2#
(SPADCALL #2# #1#
- (|getShellEntry| $ 110))
+ (|getShellEntry| $ 108))
|FFIELDC-;factorSquareFreePolynomial|))
('T
(PROGN
@@ -557,11 +557,11 @@
(GO G190) G191 (EXIT NIL))
(COND
(#3# #2#)
- ('T (|spadConstant| $ 111))))
- (|getShellEntry| $ 112))))))))))
+ ('T (|spadConstant| $ 109))))
+ (|getShellEntry| $ 110))))))))))
(DEFUN |FFIELDC-;gcdPolynomial;3Sup;16| (|f| |g| $)
- (SPADCALL |f| |g| (|getShellEntry| $ 114)))
+ (SPADCALL |f| |g| (|getShellEntry| $ 112)))
(DEFUN |FiniteFieldCategory&| (|#1|)
(PROG (|dv$1| |dv$| $ |pv$|)
@@ -569,7 +569,7 @@
(PROGN
(LETT |dv$1| (|devaluate| |#1|) . #0=(|FiniteFieldCategory&|))
(LETT |dv$| (LIST '|FiniteFieldCategory&| |dv$1|) . #0#)
- (LETT $ (|newShell| 117) . #0#)
+ (LETT $ (|newShell| 115) . #0#)
(|setShellEntry| $ 0 |dv$|)
(|setShellEntry| $ 3
(LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#))
@@ -602,38 +602,37 @@
(|List| 54) (122 . |factorsOfCyclicGroupSize|)
(126 . |quo|) (132 . **) (138 . |one?|)
|FFIELDC-;primitive?;SB;9| (143 . |Zero|) (147 . |Zero|)
- (151 . =) (|SingleInteger|) (157 . |Zero|)
- |FFIELDC-;order;SPi;10| (161 . |primitiveElement|)
- (|Table| 10 39) (165 . |tableForDiscreteLogarithm|)
- (170 . |#|) (175 . |One|) (|Union| 39 '"failed")
- (179 . |search|) (185 . |true|) (189 . *) (195 . +)
- (201 . *) (207 . -) (212 . *) (218 . +)
- |FFIELDC-;discreteLog;SNni;11| (|Void|) (|String|)
- (|OutputForm|) (224 . |messagePrint|) (229 . |rem|)
- (235 . |zero?|) (|Factored| $) (240 . |factor|)
- (|Factored| 20) (245 . |factors|)
+ (151 . =) |FFIELDC-;order;SPi;10|
+ (157 . |primitiveElement|) (|Table| 10 39)
+ (161 . |tableForDiscreteLogarithm|) (166 . |#|)
+ (171 . |One|) (|Union| 39 '"failed") (175 . |search|)
+ (181 . |true|) (185 . *) (191 . +) (197 . *) (203 . -)
+ (208 . *) (214 . +) |FFIELDC-;discreteLog;SNni;11|
+ (|Void|) (|String|) (|OutputForm|) (220 . |messagePrint|)
+ (225 . |rem|) (231 . |zero?|) (|Factored| $)
+ (236 . |factor|) (|Factored| 20) (241 . |factors|)
(|DiscreteLogarithmPackage| 6)
- (250 . |shanksDiscLogAlgorithm|)
+ (246 . |shanksDiscLogAlgorithm|)
|FFIELDC-;discreteLog;2SU;12|
- (|SparseUnivariatePolynomial| 6) (|Factored| 95)
- (|UnivariatePolynomialSquareFree| 6 95)
- (257 . |squareFree|) (|DistinctDegreeFactorize| 6 95)
- (262 . |factor|) (267 . |Zero|) (271 . =) (277 . |Zero|)
- (|Record| (|:| |irr| 95) (|:| |pow| 20)) (|List| 104)
- (|Record| (|:| |cont| 6) (|:| |factors| 105))
- (281 . |distdfact|) (287 . |coerce|) (292 . |primeFactor|)
- (298 . *) (304 . |One|) (308 . *) (|EuclideanDomain&| 95)
- (314 . |gcd|) (|SparseUnivariatePolynomial| $)
+ (|SparseUnivariatePolynomial| 6) (|Factored| 93)
+ (|UnivariatePolynomialSquareFree| 6 93)
+ (253 . |squareFree|) (|DistinctDegreeFactorize| 6 93)
+ (258 . |factor|) (263 . |Zero|) (267 . =) (273 . |Zero|)
+ (|Record| (|:| |irr| 93) (|:| |pow| 20)) (|List| 102)
+ (|Record| (|:| |cont| 6) (|:| |factors| 103))
+ (277 . |distdfact|) (283 . |coerce|) (288 . |primeFactor|)
+ (294 . *) (300 . |One|) (304 . *) (|EuclideanDomain&| 93)
+ (310 . |gcd|) (|SparseUnivariatePolynomial| $)
|FFIELDC-;gcdPolynomial;3Sup;16|)
- '#(|primitive?| 320 |order| 325 |nextItem| 335 |init| 340
- |gcdPolynomial| 344 |discreteLog| 350 |differentiate| 361
- |createPrimitiveElement| 366 |conditionP| 370 |charthRoot|
- 375)
+ '#(|primitive?| 316 |order| 321 |nextItem| 331 |init| 336
+ |gcdPolynomial| 340 |discreteLog| 346 |differentiate| 357
+ |createPrimitiveElement| 362 |conditionP| 366 |charthRoot|
+ 371)
'NIL
(CONS (|makeByteWordVec2| 1 'NIL)
(CONS '#()
(CONS '#()
- (|makeByteWordVec2| 116
+ (|makeByteWordVec2| 114
'(0 6 0 7 1 6 10 0 11 0 10 0 12 2 10 0
0 0 13 1 6 0 10 14 1 6 15 0 16 1 6 10
0 19 1 21 0 20 22 1 26 25 0 27 1 25
@@ -644,20 +643,20 @@
0 15 0 50 1 15 0 0 51 2 10 15 0 0 52
0 6 55 56 2 20 0 0 0 57 2 6 0 0 20 58
1 6 15 0 59 0 39 0 61 0 20 0 62 2 6
- 15 0 0 63 0 64 0 65 0 6 0 67 1 6 68
- 20 69 1 68 39 0 70 0 39 0 71 2 68 72
- 10 0 73 0 15 0 74 2 39 0 39 0 75 2 39
- 0 0 0 76 2 20 0 20 0 77 1 20 0 0 78 2
- 6 0 0 0 79 2 20 0 0 0 80 1 84 82 83
- 85 2 39 0 0 0 86 1 39 15 0 87 1 20 88
- 0 89 1 90 55 0 91 3 92 72 6 6 39 93 1
- 97 96 95 98 1 99 96 95 100 0 95 0 101
- 2 95 15 0 0 102 0 96 0 103 2 99 106
- 95 15 107 1 95 0 6 108 2 96 0 95 20
- 109 2 96 0 0 0 110 0 96 0 111 2 96 0
- 95 0 112 2 113 0 0 0 114 1 0 15 0 60
- 1 0 10 0 66 1 0 21 0 23 1 0 17 0 18 0
- 0 0 9 2 0 115 115 115 116 1 0 39 0 81
- 2 0 72 0 0 94 1 0 0 0 8 0 0 0 53 1 0
- 36 37 38 1 0 0 0 44 1 0 17 0 45)))))
+ 15 0 0 63 0 6 0 65 1 6 66 20 67 1 66
+ 39 0 68 0 39 0 69 2 66 70 10 0 71 0
+ 15 0 72 2 39 0 39 0 73 2 39 0 0 0 74
+ 2 20 0 20 0 75 1 20 0 0 76 2 6 0 0 0
+ 77 2 20 0 0 0 78 1 82 80 81 83 2 39 0
+ 0 0 84 1 39 15 0 85 1 20 86 0 87 1 88
+ 55 0 89 3 90 70 6 6 39 91 1 95 94 93
+ 96 1 97 94 93 98 0 93 0 99 2 93 15 0
+ 0 100 0 94 0 101 2 97 104 93 15 105 1
+ 93 0 6 106 2 94 0 93 20 107 2 94 0 0
+ 0 108 0 94 0 109 2 94 0 93 0 110 2
+ 111 0 0 0 112 1 0 15 0 60 1 0 10 0 64
+ 1 0 21 0 23 1 0 17 0 18 0 0 0 9 2 0
+ 113 113 113 114 1 0 39 0 79 2 0 70 0
+ 0 92 1 0 0 0 8 0 0 0 53 1 0 36 37 38
+ 1 0 0 0 44 1 0 17 0 45)))))
'|lookupComplete|))
diff --git a/src/algebra/strap/ILIST.lsp b/src/algebra/strap/ILIST.lsp
index 2d183936..fc9c8183 100644
--- a/src/algebra/strap/ILIST.lsp
+++ b/src/algebra/strap/ILIST.lsp
@@ -202,7 +202,7 @@
(SEQ (COND
((EQ |i| 1000)
(COND
- ((SPADCALL |x| (|getShellEntry| $ 39))
+ ((SPADCALL |x| (|getShellEntry| $ 34))
(|error| "cyclic list")))))
(LETT |y| (CONS (QCAR |x|) |y|)
|ILIST;copy;2$;20|)
@@ -215,25 +215,25 @@
(PROG (|s| |y| |z|)
(RETURN
(SEQ (LETT |y| NIL |ILIST;coerce;$Of;21|)
- (LETT |s| (SPADCALL |x| (|getShellEntry| $ 44))
+ (LETT |s| (SPADCALL |x| (|getShellEntry| $ 39))
|ILIST;coerce;$Of;21|)
(SEQ G190 (COND ((NULL (NOT (EQ |x| |s|))) (GO G191)))
(SEQ (LETT |y|
(CONS (SPADCALL (|SPADfirst| |x|)
- (|getShellEntry| $ 45))
+ (|getShellEntry| $ 40))
|y|)
|ILIST;coerce;$Of;21|)
(EXIT (LETT |x| (CDR |x|) |ILIST;coerce;$Of;21|)))
NIL (GO G190) G191 (EXIT NIL))
(LETT |y| (NREVERSE |y|) |ILIST;coerce;$Of;21|)
(EXIT (COND
- ((NULL |s|) (SPADCALL |y| (|getShellEntry| $ 49)))
+ ((NULL |s|) (SPADCALL |y| (|getShellEntry| $ 44)))
('T
(SEQ (LETT |z|
(SPADCALL
(SPADCALL (|SPADfirst| |x|)
- (|getShellEntry| $ 45))
- (|getShellEntry| $ 50))
+ (|getShellEntry| $ 40))
+ (|getShellEntry| $ 45))
|ILIST;coerce;$Of;21|)
(SEQ G190
(COND
@@ -245,7 +245,7 @@
(LETT |z|
(CONS
(SPADCALL (|SPADfirst| |x|)
- (|getShellEntry| $ 45))
+ (|getShellEntry| $ 40))
|z|)
|ILIST;coerce;$Of;21|)))
NIL (GO G190) G191 (EXIT NIL))
@@ -253,10 +253,10 @@
(SPADCALL |y|
(SPADCALL
(SPADCALL (NREVERSE |z|)
- (|getShellEntry| $ 51))
- (|getShellEntry| $ 52))
- (|getShellEntry| $ 53))
- (|getShellEntry| $ 49)))))))))))
+ (|getShellEntry| $ 46))
+ (|getShellEntry| $ 47))
+ (|getShellEntry| $ 48))
+ (|getShellEntry| $ 44)))))))))))
(DEFUN |ILIST;=;2$B;22| (|x| |y| $)
(PROG (#0=#:G1468)
@@ -273,7 +273,7 @@
(SEQ (EXIT
(COND
((SPADCALL (QCAR |x|) (QCAR |y|)
- (|getShellEntry| $ 57))
+ (|getShellEntry| $ 52))
(PROGN
(LETT #0# NIL
|ILIST;=;2$B;22|)
@@ -297,7 +297,7 @@
(SEQ (LETT |s|
(STRCONC |s|
(SPADCALL (QCAR |x|)
- (|getShellEntry| $ 60)))
+ (|getShellEntry| $ 55)))
|ILIST;latex;$S;23|)
(LETT |x| (QCDR |x|) |ILIST;latex;$S;23|)
(EXIT (COND
@@ -314,7 +314,7 @@
(COND ((NULL (NOT (NULL |x|))) (GO G191)))
(SEQ (EXIT (COND
((SPADCALL |s| (QCAR |x|)
- (|getShellEntry| $ 63))
+ (|getShellEntry| $ 58))
(PROGN
(LETT #0# T
|ILIST;member?;S$B;24|)
@@ -366,7 +366,7 @@
(SEQ (EXIT
(COND
((SPADCALL (QCAR |pr|) |f|
- (|getShellEntry| $ 63))
+ (|getShellEntry| $ 58))
(QRPLACD |pp| (QCDR |pr|)))
('T
(LETT |pp| |pr|
@@ -492,7 +492,7 @@
(LETT |dv$1| (|devaluate| |#1|) . #0=(|IndexedList|))
(LETT |dv$2| (|devaluate| |#2|) . #0#)
(LETT |dv$| (LIST '|IndexedList| |dv$1| |dv$2|) . #0#)
- (LETT $ (|newShell| 88) . #0#)
+ (LETT $ (|newShell| 85) . #0#)
(|setShellEntry| $ 0 |dv$|)
(|setShellEntry| $ 3
(LETT |pv$|
@@ -534,20 +534,20 @@
(|setShellEntry| $ 7 |#2|)
(COND
((|testBitVector| |pv$| 8)
- (|setShellEntry| $ 54
+ (|setShellEntry| $ 49
(CONS (|dispatchFunction| |ILIST;coerce;$Of;21|) $))))
(COND
((|testBitVector| |pv$| 7)
(PROGN
- (|setShellEntry| $ 58
+ (|setShellEntry| $ 53
(CONS (|dispatchFunction| |ILIST;=;2$B;22|) $))
- (|setShellEntry| $ 62
+ (|setShellEntry| $ 57
(CONS (|dispatchFunction| |ILIST;latex;$S;23|) $))
- (|setShellEntry| $ 64
+ (|setShellEntry| $ 59
(CONS (|dispatchFunction| |ILIST;member?;S$B;24|) $)))))
(COND
((|testBitVector| |pv$| 7)
- (|setShellEntry| $ 66
+ (|setShellEntry| $ 61
(CONS (|dispatchFunction|
|ILIST;removeDuplicates!;2$;26|)
$))))
@@ -564,47 +564,46 @@
|ILIST;setelt;$rest2$;13| (|List| 6)
|ILIST;construct;L$;14| |ILIST;parts;$L;15|
|ILIST;reverse!;2$;16| |ILIST;reverse;2$;17| (|Integer|)
- |ILIST;minIndex;$I;18| (|SingleInteger|) (0 . |One|)
- (4 . |One|) |ILIST;rest;$Nni$;19| (8 . |Zero|)
- (12 . |Zero|) (16 . |not|) (21 . |cyclic?|)
- |ILIST;copy;2$;20| (|OutputForm|) (|List| 41)
- (26 . |empty|) (30 . |cycleEntry|) (35 . |coerce|)
- (40 . |concat|) (46 . |reverse!|) (|List| $)
- (51 . |bracket|) (56 . |list|) (61 . |commaSeparate|)
- (66 . |overbar|) (71 . |concat!|) (77 . |coerce|)
- (82 . |true|) (86 . |false|) (90 . ~=) (96 . =) (|String|)
- (102 . |latex|) (107 . |concat|) (113 . |latex|) (118 . =)
- (124 . |member?|) |ILIST;concat!;3$;25|
- (130 . |removeDuplicates!|) (|Mapping| 11 6 6)
- |ILIST;sort!;M2$;27| |ILIST;merge!;M3$;28| (135 . |One|)
- (139 . <) (145 . -) |ILIST;split!;$I$;29| (151 . =)
- (157 . |quo|) (|Mapping| 6 6 6) (|Equation| 6) (|List| 77)
+ |ILIST;minIndex;$I;18| |ILIST;rest;$Nni$;19| (0 . |not|)
+ (5 . |cyclic?|) |ILIST;copy;2$;20| (|OutputForm|)
+ (|List| 36) (10 . |empty|) (14 . |cycleEntry|)
+ (19 . |coerce|) (24 . |concat|) (30 . |reverse!|)
+ (|List| $) (35 . |bracket|) (40 . |list|)
+ (45 . |commaSeparate|) (50 . |overbar|) (55 . |concat!|)
+ (61 . |coerce|) (66 . |true|) (70 . |false|) (74 . ~=)
+ (80 . =) (|String|) (86 . |latex|) (91 . |concat|)
+ (97 . |latex|) (102 . =) (108 . |member?|)
+ |ILIST;concat!;3$;25| (114 . |removeDuplicates!|)
+ (|Mapping| 11 6 6) |ILIST;sort!;M2$;27|
+ |ILIST;merge!;M3$;28| (119 . |One|) (123 . <)
+ (129 . |One|) (133 . -) |ILIST;split!;$I$;29| (139 . =)
+ (145 . |quo|) (|Mapping| 6 6 6) (|Equation| 6) (|List| 73)
(|Mapping| 11 6) (|Void|) (|UniversalSegment| 30) '"last"
- '"value" (|Mapping| 6 6) (|InputForm|) (|List| 30)
- (|Union| 6 '"failed"))
- '#(~= 163 |value| 169 |third| 174 |tail| 179 |swap!| 184
- |split!| 191 |sorted?| 197 |sort!| 208 |sort| 219 |size?|
- 230 |setvalue!| 236 |setrest!| 242 |setlast!| 248
- |setfirst!| 254 |setelt| 260 |setchildren!| 302 |select!|
- 308 |select| 314 |second| 320 |sample| 325 |reverse!| 329
- |reverse| 334 |rest| 339 |removeDuplicates!| 350
- |removeDuplicates| 355 |remove!| 360 |remove| 372 |reduce|
- 384 |qsetelt!| 405 |qelt| 412 |possiblyInfinite?| 418
- |position| 423 |parts| 442 |nodes| 447 |node?| 452 |new|
- 458 |more?| 464 |minIndex| 470 |min| 475 |merge!| 481
- |merge| 494 |members| 507 |member?| 512 |maxIndex| 518
- |max| 523 |map!| 529 |map| 535 |list| 548 |less?| 553
- |leaves| 559 |leaf?| 564 |latex| 569 |last| 574 |insert!|
- 585 |insert| 599 |indices| 613 |index?| 618 |hash| 624
- |first| 629 |find| 640 |fill!| 646 |explicitlyFinite?| 652
- |every?| 657 |eval| 663 |eq?| 689 |entry?| 695 |entries|
- 701 |empty?| 706 |empty| 711 |elt| 715 |distance| 758
- |delete!| 764 |delete| 776 |cyclic?| 788 |cycleTail| 793
- |cycleSplit!| 798 |cycleLength| 803 |cycleEntry| 808
- |count| 813 |copyInto!| 825 |copy| 832 |convert| 837
- |construct| 842 |concat!| 847 |concat| 859 |coerce| 882
- |children| 887 |child?| 892 |before?| 898 |any?| 904 >=
- 910 > 916 = 922 <= 928 < 934 |#| 940)
+ '"value" (|Mapping| 6 6) (|InputForm|) (|SingleInteger|)
+ (|List| 30) (|Union| 6 '"failed"))
+ '#(~= 151 |value| 157 |third| 162 |tail| 167 |swap!| 172
+ |split!| 179 |sorted?| 185 |sort!| 196 |sort| 207 |size?|
+ 218 |setvalue!| 224 |setrest!| 230 |setlast!| 236
+ |setfirst!| 242 |setelt| 248 |setchildren!| 290 |select!|
+ 296 |select| 302 |second| 308 |sample| 313 |reverse!| 317
+ |reverse| 322 |rest| 327 |removeDuplicates!| 338
+ |removeDuplicates| 343 |remove!| 348 |remove| 360 |reduce|
+ 372 |qsetelt!| 393 |qelt| 400 |possiblyInfinite?| 406
+ |position| 411 |parts| 430 |nodes| 435 |node?| 440 |new|
+ 446 |more?| 452 |minIndex| 458 |min| 463 |merge!| 469
+ |merge| 482 |members| 495 |member?| 500 |maxIndex| 506
+ |max| 511 |map!| 517 |map| 523 |list| 536 |less?| 541
+ |leaves| 547 |leaf?| 552 |latex| 557 |last| 562 |insert!|
+ 573 |insert| 587 |indices| 601 |index?| 606 |hash| 612
+ |first| 617 |find| 628 |fill!| 634 |explicitlyFinite?| 640
+ |every?| 645 |eval| 651 |eq?| 677 |entry?| 683 |entries|
+ 689 |empty?| 694 |empty| 699 |elt| 703 |distance| 746
+ |delete!| 752 |delete| 764 |cyclic?| 776 |cycleTail| 781
+ |cycleSplit!| 786 |cycleLength| 791 |cycleEntry| 796
+ |count| 801 |copyInto!| 813 |copy| 820 |convert| 825
+ |construct| 830 |concat!| 835 |concat| 847 |coerce| 870
+ |children| 875 |child?| 880 |before?| 886 |any?| 892 >=
+ 898 > 904 = 910 <= 916 < 922 |#| 928)
'((|shallowlyMutable| . 0) (|finiteAggregate| . 0))
(CONS (|makeByteWordVec2| 5
'(0 0 0 0 0 0 0 0 0 0 5 0 0 1 4 0 0 1 2 3 4))
@@ -631,63 +630,63 @@
(|EltableAggregate| 30 6) (|Evalable| 6)
(|SetCategory|) (|Type|)
(|Eltable| 30 6) (|InnerEvalable| 6 6)
- (|CoercibleTo| 41) (|ConvertibleTo| 85)
+ (|CoercibleTo| 36) (|ConvertibleTo| 81)
(|BasicType|))
- (|makeByteWordVec2| 87
- '(0 32 0 33 0 8 0 34 0 32 0 36 0 8 0 37
- 1 11 0 0 38 1 0 11 0 39 0 42 0 43 1 0
- 0 0 44 1 6 41 0 45 2 42 0 41 0 46 1
- 42 0 0 47 1 41 0 48 49 1 42 0 41 50 1
- 41 0 48 51 1 41 0 0 52 2 42 0 0 41 53
- 1 0 41 0 54 0 11 0 55 0 11 0 56 2 6
- 11 0 0 57 2 0 11 0 0 58 1 6 59 0 60 2
- 59 0 0 0 61 1 0 59 0 62 2 6 11 0 0 63
- 2 0 11 6 0 64 1 0 0 0 66 0 30 0 70 2
- 30 11 0 0 71 2 30 0 0 0 72 2 30 11 0
- 0 74 2 30 0 0 0 75 2 7 11 0 0 1 1 0 6
- 0 1 1 0 6 0 1 1 0 0 0 1 3 0 80 0 30
- 30 1 2 0 0 0 30 73 1 5 11 0 1 2 0 11
- 67 0 1 1 5 0 0 1 2 0 0 67 0 68 1 5 0
- 0 1 2 0 0 67 0 1 2 0 11 0 8 1 2 0 6 0
- 6 1 2 0 0 0 0 23 2 0 6 0 6 1 2 0 6 0
- 6 21 3 0 6 0 30 6 1 3 0 6 0 81 6 1 3
- 0 6 0 82 6 1 3 0 0 0 19 0 24 3 0 6 0
- 14 6 22 3 0 6 0 83 6 1 2 0 0 0 48 1 2
- 0 0 79 0 1 2 0 0 79 0 1 1 0 6 0 1 0 0
- 0 1 1 0 0 0 28 1 0 0 0 29 2 0 0 0 8
- 35 1 0 0 0 18 1 7 0 0 66 1 7 0 0 1 2
- 7 0 6 0 1 2 0 0 79 0 1 2 7 0 6 0 1 2
- 0 0 79 0 1 4 7 6 76 0 6 6 1 2 0 6 76
- 0 1 3 0 6 76 0 6 1 3 0 6 0 30 6 1 2 0
- 6 0 30 1 1 0 11 0 1 3 7 30 6 0 30 1 2
- 7 30 6 0 1 2 0 30 79 0 1 1 0 25 0 27
- 1 0 48 0 1 2 7 11 0 0 1 2 0 0 8 6 1 2
- 0 11 0 8 1 1 6 30 0 31 2 5 0 0 0 1 2
- 5 0 0 0 1 3 0 0 67 0 0 69 2 5 0 0 0 1
- 3 0 0 67 0 0 1 1 0 25 0 1 2 7 11 6 0
- 64 1 6 30 0 1 2 5 0 0 0 1 2 0 0 84 0
- 1 3 0 0 76 0 0 1 2 0 0 84 0 1 1 0 0 6
- 1 2 0 11 0 8 1 1 0 25 0 1 1 0 11 0 1
- 1 7 59 0 62 2 0 0 0 8 1 1 0 6 0 1 3 0
- 0 0 0 30 1 3 0 0 6 0 30 1 3 0 0 0 0
- 30 1 3 0 0 6 0 30 1 1 0 86 0 1 2 0 11
- 30 0 1 1 7 32 0 1 2 0 0 0 8 1 1 0 6 0
- 13 2 0 87 79 0 1 2 0 0 0 6 1 1 0 11 0
- 1 2 0 11 79 0 1 3 9 0 0 6 6 1 3 9 0 0
- 25 25 1 2 9 0 0 77 1 2 9 0 0 78 1 2 0
- 11 0 0 12 2 7 11 6 0 1 1 0 25 0 1 1 0
- 11 0 17 0 0 0 16 3 0 6 0 30 6 1 2 0 6
- 0 30 1 2 0 0 0 81 1 2 0 6 0 82 1 2 0
- 0 0 19 20 2 0 6 0 14 15 2 0 6 0 83 1
- 2 0 30 0 0 1 2 0 0 0 30 1 2 0 0 0 81
- 1 2 0 0 0 81 1 2 0 0 0 30 1 1 0 11 0
- 39 1 0 0 0 1 1 0 0 0 1 1 0 8 0 1 1 0
- 0 0 44 2 7 8 6 0 1 2 0 8 79 0 1 3 0 0
- 0 0 30 1 1 0 0 0 40 1 3 85 0 1 1 0 0
- 25 26 2 0 0 0 6 1 2 0 0 0 0 65 1 0 0
- 48 1 2 0 0 0 6 1 2 0 0 6 0 10 2 0 0 0
- 0 1 1 8 41 0 54 1 0 48 0 1 2 7 11 0 0
- 1 2 7 11 0 0 1 2 0 11 79 0 1 2 5 11 0
- 0 1 2 5 11 0 0 1 2 7 11 0 0 58 2 5 11
- 0 0 1 2 5 11 0 0 1 1 0 8 0 9)))))
+ (|makeByteWordVec2| 84
+ '(1 11 0 0 33 1 0 11 0 34 0 37 0 38 1 0
+ 0 0 39 1 6 36 0 40 2 37 0 36 0 41 1
+ 37 0 0 42 1 36 0 43 44 1 37 0 36 45 1
+ 36 0 43 46 1 36 0 0 47 2 37 0 0 36 48
+ 1 0 36 0 49 0 11 0 50 0 11 0 51 2 6
+ 11 0 0 52 2 0 11 0 0 53 1 6 54 0 55 2
+ 54 0 0 0 56 1 0 54 0 57 2 6 11 0 0 58
+ 2 0 11 6 0 59 1 0 0 0 61 0 30 0 65 2
+ 30 11 0 0 66 0 8 0 67 2 30 0 0 0 68 2
+ 30 11 0 0 70 2 30 0 0 0 71 2 7 11 0 0
+ 1 1 0 6 0 1 1 0 6 0 1 1 0 0 0 1 3 0
+ 76 0 30 30 1 2 0 0 0 30 69 1 5 11 0 1
+ 2 0 11 62 0 1 1 5 0 0 1 2 0 0 62 0 63
+ 1 5 0 0 1 2 0 0 62 0 1 2 0 11 0 8 1 2
+ 0 6 0 6 1 2 0 0 0 0 23 2 0 6 0 6 1 2
+ 0 6 0 6 21 3 0 6 0 30 6 1 3 0 6 0 77
+ 6 1 3 0 6 0 78 6 1 3 0 0 0 19 0 24 3
+ 0 6 0 14 6 22 3 0 6 0 79 6 1 2 0 0 0
+ 43 1 2 0 0 75 0 1 2 0 0 75 0 1 1 0 6
+ 0 1 0 0 0 1 1 0 0 0 28 1 0 0 0 29 2 0
+ 0 0 8 32 1 0 0 0 18 1 7 0 0 61 1 7 0
+ 0 1 2 7 0 6 0 1 2 0 0 75 0 1 2 7 0 6
+ 0 1 2 0 0 75 0 1 4 7 6 72 0 6 6 1 2 0
+ 6 72 0 1 3 0 6 72 0 6 1 3 0 6 0 30 6
+ 1 2 0 6 0 30 1 1 0 11 0 1 3 7 30 6 0
+ 30 1 2 7 30 6 0 1 2 0 30 75 0 1 1 0
+ 25 0 27 1 0 43 0 1 2 7 11 0 0 1 2 0 0
+ 8 6 1 2 0 11 0 8 1 1 6 30 0 31 2 5 0
+ 0 0 1 2 5 0 0 0 1 3 0 0 62 0 0 64 2 5
+ 0 0 0 1 3 0 0 62 0 0 1 1 0 25 0 1 2 7
+ 11 6 0 59 1 6 30 0 1 2 5 0 0 0 1 2 0
+ 0 80 0 1 3 0 0 72 0 0 1 2 0 0 80 0 1
+ 1 0 0 6 1 2 0 11 0 8 1 1 0 25 0 1 1 0
+ 11 0 1 1 7 54 0 57 2 0 0 0 8 1 1 0 6
+ 0 1 3 0 0 0 0 30 1 3 0 0 6 0 30 1 3 0
+ 0 0 0 30 1 3 0 0 6 0 30 1 1 0 83 0 1
+ 2 0 11 30 0 1 1 7 82 0 1 2 0 0 0 8 1
+ 1 0 6 0 13 2 0 84 75 0 1 2 0 0 0 6 1
+ 1 0 11 0 1 2 0 11 75 0 1 3 9 0 0 6 6
+ 1 3 9 0 0 25 25 1 2 9 0 0 73 1 2 9 0
+ 0 74 1 2 0 11 0 0 12 2 7 11 6 0 1 1 0
+ 25 0 1 1 0 11 0 17 0 0 0 16 3 0 6 0
+ 30 6 1 2 0 6 0 30 1 2 0 0 0 77 1 2 0
+ 6 0 78 1 2 0 0 0 19 20 2 0 6 0 14 15
+ 2 0 6 0 79 1 2 0 30 0 0 1 2 0 0 0 30
+ 1 2 0 0 0 77 1 2 0 0 0 77 1 2 0 0 0
+ 30 1 1 0 11 0 34 1 0 0 0 1 1 0 0 0 1
+ 1 0 8 0 1 1 0 0 0 39 2 7 8 6 0 1 2 0
+ 8 75 0 1 3 0 0 0 0 30 1 1 0 0 0 35 1
+ 3 81 0 1 1 0 0 25 26 2 0 0 0 6 1 2 0
+ 0 0 0 60 1 0 0 43 1 2 0 0 0 6 1 2 0 0
+ 6 0 10 2 0 0 0 0 1 1 8 36 0 49 1 0 43
+ 0 1 2 7 11 0 0 1 2 7 11 0 0 1 2 0 11
+ 75 0 1 2 5 11 0 0 1 2 5 11 0 0 1 2 7
+ 11 0 0 53 2 5 11 0 0 1 2 5 11 0 0 1 1
+ 0 8 0 9)))))
'|lookupComplete|))
diff --git a/src/algebra/strap/ISTRING.lsp b/src/algebra/strap/ISTRING.lsp
index 24cf2826..b2fb52c3 100644
--- a/src/algebra/strap/ISTRING.lsp
+++ b/src/algebra/strap/ISTRING.lsp
@@ -334,8 +334,7 @@
(SEQ (SEQ
(LETT |r| |startpos|
|ISTRING;position;C$2I;19|)
- (LETT #0#
- (QSDIFFERENCE (QCSIZE |t|) 1)
+ (LETT #0# (- (QCSIZE |t|) 1)
|ISTRING;position;C$2I;19|)
G190
(COND ((> |r| #0#) (GO G191)))
@@ -370,8 +369,7 @@
(SEQ (SEQ
(LETT |r| |startpos|
|ISTRING;position;Cc$2I;20|)
- (LETT #0#
- (QSDIFFERENCE (QCSIZE |t|) 1)
+ (LETT #0# (- (QCSIZE |t|) 1)
|ISTRING;position;Cc$2I;20|)
G190
(COND ((> |r| #0#) (GO G191)))
@@ -379,7 +377,7 @@
(EXIT
(COND
((SPADCALL (CHAR |t| |r|) |cc|
- (|getShellEntry| $ 66))
+ (|getShellEntry| $ 64))
(PROGN
(LETT #1#
(+ |r|
@@ -415,7 +413,7 @@
(COND
((OR (> |i| |n|)
(NULL (SPADCALL (|ISTRING;elt;$IC;30| |s| |i| $)
- |c| (|getShellEntry| $ 70))))
+ |c| (|getShellEntry| $ 68))))
(GO G191)))
(SEQ (EXIT 0))
(LETT |i| (+ |i| 1) |ISTRING;split;$CL;22|) (GO G190)
@@ -438,7 +436,7 @@
(SPADCALL |i| (- |j| 1)
(|getShellEntry| $ 24))
$)
- |l| (|getShellEntry| $ 73))
+ |l| (|getShellEntry| $ 71))
|ISTRING;split;$CL;22|)
(EXIT (SEQ (LETT |i| |j| |ISTRING;split;$CL;22|)
G190
@@ -447,7 +445,7 @@
(NULL
(SPADCALL
(|ISTRING;elt;$IC;30| |s| |i| $)
- |c| (|getShellEntry| $ 70))))
+ |c| (|getShellEntry| $ 68))))
(GO G191)))
(SEQ (EXIT 0))
(LETT |i| (+ |i| 1)
@@ -461,7 +459,7 @@
(|ISTRING;elt;$Us$;31| |s|
(SPADCALL |i| |n| (|getShellEntry| $ 24))
$)
- |l| (|getShellEntry| $ 73))
+ |l| (|getShellEntry| $ 71))
|ISTRING;split;$CL;22|)))
(EXIT (NREVERSE |l|))))))
@@ -476,7 +474,7 @@
(COND
((OR (> |i| |n|)
(NULL (SPADCALL (|ISTRING;elt;$IC;30| |s| |i| $)
- |cc| (|getShellEntry| $ 66))))
+ |cc| (|getShellEntry| $ 64))))
(GO G191)))
(SEQ (EXIT 0))
(LETT |i| (+ |i| 1) |ISTRING;split;$CcL;23|) (GO G190)
@@ -499,7 +497,7 @@
(SPADCALL |i| (- |j| 1)
(|getShellEntry| $ 24))
$)
- |l| (|getShellEntry| $ 73))
+ |l| (|getShellEntry| $ 71))
|ISTRING;split;$CcL;23|)
(EXIT (SEQ (LETT |i| |j| |ISTRING;split;$CcL;23|)
G190
@@ -508,7 +506,7 @@
(NULL
(SPADCALL
(|ISTRING;elt;$IC;30| |s| |i| $)
- |cc| (|getShellEntry| $ 66))))
+ |cc| (|getShellEntry| $ 64))))
(GO G191)))
(SEQ (EXIT 0))
(LETT |i| (+ |i| 1)
@@ -522,7 +520,7 @@
(|ISTRING;elt;$Us$;31| |s|
(SPADCALL |i| |n| (|getShellEntry| $ 24))
$)
- |l| (|getShellEntry| $ 73))
+ |l| (|getShellEntry| $ 71))
|ISTRING;split;$CcL;23|)))
(EXIT (NREVERSE |l|))))))
@@ -537,7 +535,7 @@
(COND
((OR (> |i| |n|)
(NULL (SPADCALL (|ISTRING;elt;$IC;30| |s| |i| $)
- |c| (|getShellEntry| $ 70))))
+ |c| (|getShellEntry| $ 68))))
(GO G191)))
(SEQ (EXIT 0))
(LETT |i| (+ |i| 1) |ISTRING;leftTrim;$C$;24|)
@@ -556,7 +554,7 @@
(COND
((OR (> |i| |n|)
(NULL (SPADCALL (|ISTRING;elt;$IC;30| |s| |i| $)
- |cc| (|getShellEntry| $ 66))))
+ |cc| (|getShellEntry| $ 64))))
(GO G191)))
(SEQ (EXIT 0))
(LETT |i| (+ |i| 1) |ISTRING;leftTrim;$Cc$;25|)
@@ -575,7 +573,7 @@
(COND
((OR (< |j| #0#)
(NULL (SPADCALL (|ISTRING;elt;$IC;30| |s| |j| $)
- |c| (|getShellEntry| $ 70))))
+ |c| (|getShellEntry| $ 68))))
(GO G191)))
(SEQ (EXIT 0))
(LETT |j| (+ |j| -1) |ISTRING;rightTrim;$C$;26|)
@@ -596,7 +594,7 @@
(COND
((OR (< |j| #0#)
(NULL (SPADCALL (|ISTRING;elt;$IC;30| |s| |j| $)
- |cc| (|getShellEntry| $ 66))))
+ |cc| (|getShellEntry| $ 64))))
(GO G191)))
(SEQ (EXIT 0))
(LETT |j| (+ |j| -1) |ISTRING;rightTrim;$Cc$;27|)
@@ -730,7 +728,7 @@
('T
(SEQ (COND
((SPADCALL |p| |m|
- (|getShellEntry| $ 89))
+ (|getShellEntry| $ 88))
(COND
((NOT
(SPADCALL
@@ -740,7 +738,7 @@
(|getShellEntry| $ 24))
$)
|target|
- (|getShellEntry| $ 90)))
+ (|getShellEntry| $ 89)))
(EXIT NIL)))))
(LETT |i| |p|
|ISTRING;match?;2$CB;34|)
@@ -758,7 +756,7 @@
(COND
((NULL
(SPADCALL |q| (- |m| 1)
- (|getShellEntry| $ 89)))
+ (|getShellEntry| $ 88)))
(GO G191)))
(SEQ
(LETT |s|
@@ -806,7 +804,7 @@
NIL (GO G190) G191 (EXIT NIL))
(COND
((SPADCALL |p| |n|
- (|getShellEntry| $ 89))
+ (|getShellEntry| $ 88))
(COND
((NOT
(|ISTRING;suffix?;2$B;21|
@@ -846,7 +844,7 @@
(PROGN
(LETT |dv$1| (|devaluate| |#1|) . #0=(|IndexedString|))
(LETT |dv$| (LIST '|IndexedString| |dv$1|) . #0#)
- (LETT $ (|newShell| 102) . #0#)
+ (LETT $ (|newShell| 101) . #0#)
(|setShellEntry| $ 0 |dv$|)
(|setShellEntry| $ 3
(LETT |pv$|
@@ -907,43 +905,43 @@
|ISTRING;latex;$S;14| (66 . |lo|) (71 . |hasHi|)
(76 . |hi|) (81 . |maxIndex|) (86 . |Zero|) (90 . <)
(96 . >=) (102 . |One|) (106 . +) (112 . |space|)
- (|SingleInteger|) (116 . |Zero|) (120 . |One|)
- |ISTRING;replace;$Us2$;15| (124 . >)
- |ISTRING;setelt;$I2C;16| (130 . |false|) (134 . |true|)
+ (|PositiveInteger|) (116 . |One|)
+ |ISTRING;replace;$Us2$;15| (120 . >)
+ |ISTRING;setelt;$I2C;16| (126 . |false|) (130 . |true|)
|ISTRING;substring?;2$IB;17| |ISTRING;position;2$2I;18|
- (138 . -) |ISTRING;position;C$2I;19| (144 . |member?|)
+ |ISTRING;position;C$2I;19| (134 . |member?|)
|ISTRING;position;Cc$2I;20| |ISTRING;suffix?;2$B;21|
- |ISTRING;elt;$IC;30| (150 . =) (|List| $$) (156 . |empty|)
- (160 . |concat|) (166 . |reverse!|) (|List| $)
+ |ISTRING;elt;$IC;30| (140 . =) (|List| $$) (146 . |empty|)
+ (150 . |concat|) (156 . |reverse!|) (|List| $)
|ISTRING;split;$CL;22| |ISTRING;split;$CcL;23|
|ISTRING;leftTrim;$C$;24| |ISTRING;leftTrim;$Cc$;25|
- (171 . -) |ISTRING;rightTrim;$C$;26|
- |ISTRING;rightTrim;$Cc$;27| (176 . +)
+ (161 . -) |ISTRING;rightTrim;$C$;26|
+ |ISTRING;rightTrim;$Cc$;27| (166 . +)
|ISTRING;copyInto!;2$I$;29| |ISTRING;concat;L$;28|
- (182 . |max|) |ISTRING;hash;$Si;32|
- |ISTRING;match;2$CNni;33| (188 . ~=) (194 . |prefix?|)
+ (172 . |max|) (|SingleInteger|) |ISTRING;hash;$Si;32|
+ |ISTRING;match;2$CNni;33| (178 . ~=) (184 . |prefix?|)
|ISTRING;match?;2$CB;34| (|List| 8) (|Equation| 8)
- (|List| 93) (|Mapping| 8 8 8) (|InputForm|)
+ (|List| 92) (|Mapping| 8 8 8) (|InputForm|)
(|Mapping| 13 8) (|Mapping| 13 8 8) (|Void|)
(|Union| 8 '"failed") (|List| 11))
- '#(~= 200 |upperCase!| 206 |upperCase| 211 |trim| 216 |swap!|
- 228 |suffix?| 235 |substring?| 241 |split| 248 |sorted?|
- 260 |sort!| 271 |sort| 282 |size?| 293 |setelt| 299
- |select| 313 |sample| 319 |rightTrim| 323 |reverse!| 335
- |reverse| 340 |replace| 345 |removeDuplicates| 352
- |remove| 357 |reduce| 369 |qsetelt!| 390 |qelt| 397
- |prefix?| 403 |position| 409 |parts| 442 |new| 447 |more?|
- 453 |minIndex| 459 |min| 464 |merge| 470 |members| 483
- |member?| 488 |maxIndex| 494 |max| 499 |match?| 505
- |match| 512 |map!| 519 |map| 525 |lowerCase!| 538
- |lowerCase| 543 |less?| 548 |leftTrim| 554 |latex| 566
- |insert| 571 |indices| 585 |index?| 590 |hash| 596 |first|
- 601 |find| 606 |fill!| 612 |every?| 618 |eval| 624 |eq?|
- 650 |entry?| 656 |entries| 662 |empty?| 667 |empty| 672
- |elt| 676 |delete| 701 |count| 713 |copyInto!| 725 |copy|
- 732 |convert| 737 |construct| 742 |concat| 747 |coerce|
- 770 |before?| 780 |any?| 786 >= 792 > 798 = 804 <= 810 <
- 816 |#| 822)
+ '#(~= 190 |upperCase!| 196 |upperCase| 201 |trim| 206 |swap!|
+ 218 |suffix?| 225 |substring?| 231 |split| 238 |sorted?|
+ 250 |sort!| 261 |sort| 272 |size?| 283 |setelt| 289
+ |select| 303 |sample| 309 |rightTrim| 313 |reverse!| 325
+ |reverse| 330 |replace| 335 |removeDuplicates| 342
+ |remove| 347 |reduce| 359 |qsetelt!| 380 |qelt| 387
+ |prefix?| 393 |position| 399 |parts| 432 |new| 437 |more?|
+ 443 |minIndex| 449 |min| 454 |merge| 460 |members| 473
+ |member?| 478 |maxIndex| 484 |max| 489 |match?| 495
+ |match| 502 |map!| 509 |map| 515 |lowerCase!| 528
+ |lowerCase| 533 |less?| 538 |leftTrim| 544 |latex| 556
+ |insert| 561 |indices| 575 |index?| 580 |hash| 586 |first|
+ 591 |find| 596 |fill!| 602 |every?| 608 |eval| 614 |eq?|
+ 640 |entry?| 646 |entries| 652 |empty?| 657 |empty| 662
+ |elt| 666 |delete| 691 |count| 703 |copyInto!| 715 |copy|
+ 722 |convert| 727 |construct| 732 |concat| 737 |coerce|
+ 760 |before?| 770 |any?| 776 >= 782 > 788 = 794 <= 800 <
+ 806 |#| 812)
'((|shallowlyMutable| . 0) (|finiteAggregate| . 0))
(CONS (|makeByteWordVec2| 5
'(0 0 0 0 0 0 0 5 0 0 1 4 0 0 1 2 3 4))
@@ -966,9 +964,9 @@
(|EltableAggregate| 11 8) (|Evalable| 8)
(|SetCategory|) (|Type|)
(|Eltable| 11 8) (|InnerEvalable| 8 8)
- (|CoercibleTo| 29) (|ConvertibleTo| 96)
+ (|CoercibleTo| 29) (|ConvertibleTo| 95)
(|BasicType|))
- (|makeByteWordVec2| 101
+ (|makeByteWordVec2| 100
'(0 11 0 12 2 11 13 0 0 14 0 11 0 21 2
11 0 0 0 22 2 23 0 11 11 24 1 23 0 11
26 1 29 0 28 30 0 33 0 34 1 8 0 0 35
@@ -976,48 +974,47 @@
28 0 0 0 42 1 23 11 0 44 1 23 13 0 45
1 23 11 0 46 1 0 11 0 47 0 7 0 48 2
11 13 0 0 49 2 11 13 0 0 50 0 7 0 51
- 2 11 0 0 0 52 0 8 0 53 0 54 0 55 0 54
- 0 56 2 11 13 0 0 58 0 13 0 60 0 13 0
- 61 2 54 0 0 0 64 2 33 13 8 0 66 2 8
- 13 0 0 70 0 71 0 72 2 71 0 2 0 73 1
- 71 0 0 74 1 54 0 0 80 2 7 0 0 0 83 2
- 11 0 0 0 86 2 11 13 0 0 89 2 0 13 0 0
- 90 2 7 13 0 0 1 1 0 0 0 38 1 0 0 0 1
- 2 0 0 0 8 1 2 0 0 0 33 1 3 0 99 0 11
- 11 1 2 0 13 0 0 68 3 0 13 0 0 11 62 2
- 0 75 0 33 77 2 0 75 0 8 76 1 5 13 0 1
- 2 0 13 98 0 1 1 5 0 0 1 2 0 0 98 0 1
- 1 5 0 0 1 2 0 0 98 0 1 2 0 13 0 7 1 3
- 0 8 0 23 8 1 3 0 8 0 11 8 59 2 0 0 97
- 0 1 0 0 0 1 2 0 0 0 8 81 2 0 0 0 33
- 82 1 0 0 0 1 1 0 0 0 1 3 0 0 0 23 0
- 57 1 7 0 0 1 2 7 0 8 0 1 2 0 0 97 0 1
- 4 7 8 95 0 8 8 1 3 0 8 95 0 8 1 2 0 8
- 95 0 1 3 0 8 0 11 8 1 2 0 8 0 11 1 2
- 0 13 0 0 90 3 7 11 8 0 11 65 2 7 11 8
- 0 1 3 0 11 33 0 11 67 3 0 11 0 0 11
- 63 2 0 11 97 0 1 1 0 92 0 1 2 0 0 7 8
- 9 2 0 13 0 7 1 1 6 11 0 32 2 5 0 0 0
- 1 2 5 0 0 0 1 3 0 0 98 0 0 1 1 0 92 0
- 1 2 7 13 8 0 1 1 6 11 0 47 2 5 0 0 0
- 1 3 0 13 0 0 8 91 3 0 7 0 0 8 88 2 0
- 0 36 0 37 3 0 0 95 0 0 1 2 0 0 36 0 1
- 1 0 0 0 41 1 0 0 0 1 2 0 13 0 7 1 2 0
- 0 0 8 78 2 0 0 0 33 79 1 7 28 0 43 3
- 0 0 8 0 11 1 3 0 0 0 0 11 27 1 0 101
- 0 1 2 0 13 11 0 1 1 7 54 0 87 1 6 8 0
- 1 2 0 100 97 0 1 2 0 0 0 8 1 2 0 13
- 97 0 1 3 9 0 0 92 92 1 3 9 0 0 8 8 1
- 2 9 0 0 94 1 2 9 0 0 93 1 2 0 13 0 0
- 1 2 7 13 8 0 1 1 0 92 0 1 1 0 13 0 15
- 0 0 0 10 2 0 0 0 0 1 2 0 0 0 23 25 2
- 0 8 0 11 69 3 0 8 0 11 8 1 2 0 0 0 11
- 1 2 0 0 0 23 1 2 7 7 8 0 1 2 0 7 97 0
- 1 3 0 0 0 0 11 84 1 0 0 0 20 1 3 96 0
- 1 1 0 0 92 1 1 0 0 75 85 2 0 0 0 0 19
- 2 0 0 0 8 1 2 0 0 8 0 1 1 8 29 0 31 1
- 0 0 8 1 2 7 13 0 0 1 2 0 13 97 0 1 2
- 5 13 0 0 1 2 5 13 0 0 1 2 7 13 0 0 17
- 2 5 13 0 0 1 2 5 13 0 0 18 1 0 7 0
- 16)))))
+ 2 11 0 0 0 52 0 8 0 53 0 54 0 55 2 11
+ 13 0 0 57 0 13 0 59 0 13 0 60 2 33 13
+ 8 0 64 2 8 13 0 0 68 0 69 0 70 2 69 0
+ 2 0 71 1 69 0 0 72 1 11 0 0 78 2 7 0
+ 0 0 81 2 11 0 0 0 84 2 11 13 0 0 88 2
+ 0 13 0 0 89 2 7 13 0 0 1 1 0 0 0 38 1
+ 0 0 0 1 2 0 0 0 8 1 2 0 0 0 33 1 3 0
+ 98 0 11 11 1 2 0 13 0 0 66 3 0 13 0 0
+ 11 61 2 0 73 0 33 75 2 0 73 0 8 74 1
+ 5 13 0 1 2 0 13 97 0 1 1 5 0 0 1 2 0
+ 0 97 0 1 1 5 0 0 1 2 0 0 97 0 1 2 0
+ 13 0 7 1 3 0 8 0 23 8 1 3 0 8 0 11 8
+ 58 2 0 0 96 0 1 0 0 0 1 2 0 0 0 8 79
+ 2 0 0 0 33 80 1 0 0 0 1 1 0 0 0 1 3 0
+ 0 0 23 0 56 1 7 0 0 1 2 7 0 8 0 1 2 0
+ 0 96 0 1 4 7 8 94 0 8 8 1 3 0 8 94 0
+ 8 1 2 0 8 94 0 1 3 0 8 0 11 8 1 2 0 8
+ 0 11 1 2 0 13 0 0 89 3 7 11 8 0 11 63
+ 2 7 11 8 0 1 3 0 11 33 0 11 65 3 0 11
+ 0 0 11 62 2 0 11 96 0 1 1 0 91 0 1 2
+ 0 0 7 8 9 2 0 13 0 7 1 1 6 11 0 32 2
+ 5 0 0 0 1 2 5 0 0 0 1 3 0 0 97 0 0 1
+ 1 0 91 0 1 2 7 13 8 0 1 1 6 11 0 47 2
+ 5 0 0 0 1 3 0 13 0 0 8 90 3 0 7 0 0 8
+ 87 2 0 0 36 0 37 3 0 0 94 0 0 1 2 0 0
+ 36 0 1 1 0 0 0 41 1 0 0 0 1 2 0 13 0
+ 7 1 2 0 0 0 8 76 2 0 0 0 33 77 1 7 28
+ 0 43 3 0 0 8 0 11 1 3 0 0 0 0 11 27 1
+ 0 100 0 1 2 0 13 11 0 1 1 7 85 0 86 1
+ 6 8 0 1 2 0 99 96 0 1 2 0 0 0 8 1 2 0
+ 13 96 0 1 3 9 0 0 91 91 1 3 9 0 0 8 8
+ 1 2 9 0 0 93 1 2 9 0 0 92 1 2 0 13 0
+ 0 1 2 7 13 8 0 1 1 0 91 0 1 1 0 13 0
+ 15 0 0 0 10 2 0 0 0 0 1 2 0 0 0 23 25
+ 2 0 8 0 11 67 3 0 8 0 11 8 1 2 0 0 0
+ 11 1 2 0 0 0 23 1 2 7 7 8 0 1 2 0 7
+ 96 0 1 3 0 0 0 0 11 82 1 0 0 0 20 1 3
+ 95 0 1 1 0 0 91 1 1 0 0 73 83 2 0 0 0
+ 0 19 2 0 0 0 8 1 2 0 0 8 0 1 1 8 29 0
+ 31 1 0 0 8 1 2 7 13 0 0 1 2 0 13 96 0
+ 1 2 5 13 0 0 1 2 5 13 0 0 1 2 7 13 0
+ 0 17 2 5 13 0 0 1 2 5 13 0 0 18 1 0 7
+ 0 16)))))
'|lookupComplete|))
diff --git a/src/algebra/strap/LSAGG-.lsp b/src/algebra/strap/LSAGG-.lsp
index bf18f9db..d9080d7e 100644
--- a/src/algebra/strap/LSAGG-.lsp
+++ b/src/algebra/strap/LSAGG-.lsp
@@ -652,7 +652,7 @@
(SEQ (COND
((EQL |k| 1000)
(COND
- ((SPADCALL |x| (|getShellEntry| $ 71))
+ ((SPADCALL |x| (|getShellEntry| $ 69))
(EXIT (|error| "cyclic list"))))))
(LETT |y|
(SPADCALL
@@ -697,7 +697,7 @@
(SEQ (SPADCALL |z|
(SPADCALL |x|
(|getShellEntry| $ 18))
- (|getShellEntry| $ 73))
+ (|getShellEntry| $ 71))
(LETT |x|
(SPADCALL |x|
(|getShellEntry| $ 17))
@@ -771,7 +771,7 @@
(VECTOR $ |p|))
(SPADCALL |p|
(|getShellEntry| $ 17))
- (|getShellEntry| $ 77))
+ (|getShellEntry| $ 75))
(|getShellEntry| $ 27))
|LSAGG-;removeDuplicates!;2A;24|)))
NIL (GO G190) G191 (EXIT NIL))
@@ -784,7 +784,7 @@
(PROGN
(SPADCALL |#1|
(SPADCALL (|getShellEntry| $$ 1) (|getShellEntry| $ 18))
- (|getShellEntry| $ 76))))))
+ (|getShellEntry| $ 74))))))
(DEFUN |LSAGG-;<;2AB;25| (|x| |y| $)
(PROG (#0=#:G1565)
@@ -814,7 +814,7 @@
(|getShellEntry| $ 18))
(SPADCALL |y|
(|getShellEntry| $ 18))
- (|getShellEntry| $ 79))
+ (|getShellEntry| $ 77))
|LSAGG-;<;2AB;25|)
(GO #0#)))
('T
@@ -843,7 +843,7 @@
(LETT |dv$1| (|devaluate| |#1|) . #0=(|ListAggregate&|))
(LETT |dv$2| (|devaluate| |#2|) . #0#)
(LETT |dv$| (LIST '|ListAggregate&| |dv$1| |dv$2|) . #0#)
- (LETT $ (|newShell| 82) . #0#)
+ (LETT $ (|newShell| 80) . #0#)
(|setShellEntry| $ 0 |dv$|)
(|setShellEntry| $ 3
(LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#))
@@ -857,16 +857,16 @@
(COND
((|HasCategory| |#2| '(|SetCategory|))
(PROGN
- (|setShellEntry| $ 75
+ (|setShellEntry| $ 73
(CONS (|dispatchFunction| |LSAGG-;position;SA2I;23|)
$))
- (|setShellEntry| $ 78
+ (|setShellEntry| $ 76
(CONS (|dispatchFunction|
|LSAGG-;removeDuplicates!;2A;24|)
$)))))
(COND
((|HasCategory| |#2| '(|OrderedSet|))
- (|setShellEntry| $ 80
+ (|setShellEntry| $ 78
(CONS (|dispatchFunction| |LSAGG-;<;2AB;25|) $))))
$))))
@@ -888,27 +888,26 @@
(113 . |lo|) (118 . |hasHi|) (123 . |hi|)
(128 . |maxIndex|) (133 . +) |LSAGG-;delete!;AUsA;11|
(|Union| 7 '"failed") |LSAGG-;find;MAU;12|
- (|SingleInteger|) (139 . |One|) |LSAGG-;position;MAI;13|
+ (|PositiveInteger|) (139 . |One|) |LSAGG-;position;MAI;13|
(143 . |reverse!|) (148 . |quo|) (154 . |split!|)
(160 . |true|) |LSAGG-;sorted?;MAB;15|
|LSAGG-;reduce;MA2S;16| (164 . ~=) (170 . |reduce|)
|LSAGG-;new;NniSA;18| |LSAGG-;map;M3A;19|
- |LSAGG-;reverse!;2A;20| (178 . |Zero|) (182 . |Zero|)
- (186 . =) (192 . |cyclic?|) |LSAGG-;copy;2A;21|
- (197 . |setfirst!|) |LSAGG-;copyInto!;2AIA;22|
- (203 . |position|) (210 . =) (216 . |remove!|)
- (222 . |removeDuplicates!|) (227 . <) (233 . <)
- (|Mapping| 7 7))
- '#(|sorted?| 239 |sort!| 245 |select!| 251 |reverse!| 257
- |removeDuplicates!| 262 |remove!| 267 |reduce| 273
- |position| 294 |new| 307 |merge!| 313 |merge| 320 |map|
- 327 |list| 334 |insert!| 339 |find| 353 |delete!| 359
- |copyInto!| 371 |copy| 378 < 383)
+ |LSAGG-;reverse!;2A;20| (178 . =) (184 . |cyclic?|)
+ |LSAGG-;copy;2A;21| (189 . |setfirst!|)
+ |LSAGG-;copyInto!;2AIA;22| (195 . |position|) (202 . =)
+ (208 . |remove!|) (214 . |removeDuplicates!|) (219 . <)
+ (225 . <) (|Mapping| 7 7))
+ '#(|sorted?| 231 |sort!| 237 |select!| 243 |reverse!| 249
+ |removeDuplicates!| 254 |remove!| 259 |reduce| 265
+ |position| 286 |new| 299 |merge!| 305 |merge| 312 |map|
+ 319 |list| 326 |insert!| 331 |find| 345 |delete!| 351
+ |copyInto!| 363 |copy| 370 < 375)
'NIL
(CONS (|makeByteWordVec2| 1 'NIL)
(CONS '#()
(CONS '#()
- (|makeByteWordVec2| 80
+ (|makeByteWordVec2| 78
'(1 6 8 0 9 0 6 0 13 2 6 0 7 0 14 1 6
10 0 16 1 6 0 0 17 1 6 7 0 18 3 6 7
19 0 7 20 1 6 0 0 22 3 6 0 11 0 0 23
@@ -920,18 +919,17 @@
0 48 1 6 32 0 49 2 32 0 0 0 50 0 54 0
55 1 6 0 0 57 2 32 0 0 0 58 2 6 0 0
32 59 0 10 0 60 2 7 10 0 0 63 4 0 7
- 19 0 7 7 64 0 54 0 68 0 8 0 69 2 8 10
- 0 0 70 1 6 10 0 71 2 6 7 0 7 73 3 0
- 32 7 0 32 75 2 7 10 0 0 76 2 6 0 28 0
- 77 1 0 0 0 78 2 7 10 0 0 79 2 0 10 0
- 0 80 2 0 10 11 0 61 2 0 0 11 0 12 2 0
- 0 28 0 29 1 0 0 0 67 1 0 0 0 78 2 0 0
- 28 0 43 3 0 7 19 0 7 62 4 0 7 19 0 7
- 7 64 2 0 7 19 0 21 2 0 32 28 0 56 3 0
- 32 7 0 32 75 2 0 0 8 7 65 3 0 0 11 0
- 0 31 3 0 0 11 0 0 24 3 0 0 19 0 0 66
- 1 0 0 7 15 3 0 0 7 0 32 40 3 0 0 0 0
- 32 42 2 0 52 28 0 53 2 0 0 0 45 51 2
- 0 0 0 32 44 3 0 0 0 0 32 74 1 0 0 0
- 72 2 0 10 0 0 80)))))
+ 19 0 7 7 64 2 8 10 0 0 68 1 6 10 0 69
+ 2 6 7 0 7 71 3 0 32 7 0 32 73 2 7 10
+ 0 0 74 2 6 0 28 0 75 1 0 0 0 76 2 7
+ 10 0 0 77 2 0 10 0 0 78 2 0 10 11 0
+ 61 2 0 0 11 0 12 2 0 0 28 0 29 1 0 0
+ 0 67 1 0 0 0 76 2 0 0 28 0 43 3 0 7
+ 19 0 7 62 4 0 7 19 0 7 7 64 2 0 7 19
+ 0 21 2 0 32 28 0 56 3 0 32 7 0 32 73
+ 2 0 0 8 7 65 3 0 0 11 0 0 31 3 0 0 11
+ 0 0 24 3 0 0 19 0 0 66 1 0 0 7 15 3 0
+ 0 7 0 32 40 3 0 0 0 0 32 42 2 0 52 28
+ 0 53 2 0 0 0 45 51 2 0 0 0 32 44 3 0
+ 0 0 0 32 72 1 0 0 0 70 2 0 10 0 0 78)))))
'|lookupComplete|))
diff --git a/src/algebra/strap/STAGG-.lsp b/src/algebra/strap/STAGG-.lsp
index 4fabe92e..d58c703a 100644
--- a/src/algebra/strap/STAGG-.lsp
+++ b/src/algebra/strap/STAGG-.lsp
@@ -61,23 +61,23 @@
(CONS (|STAGG-;c2| |x|
(LETT |x|
(SPADCALL |x|
- (|getShellEntry| $ 17))
+ (|getShellEntry| $ 13))
|STAGG-;first;ANniA;3|)
$)
#0#)
|STAGG-;first;ANniA;3|)
(LETT |i| (QSADD1 |i|) |STAGG-;first;ANniA;3|)
(GO G190) G191 (EXIT (NREVERSE0 #0#))))
- (|getShellEntry| $ 19))))))
+ (|getShellEntry| $ 15))))))
(DEFUN |STAGG-;c2| (|x| |r| $)
(COND
- ((SPADCALL |x| (|getShellEntry| $ 21))
+ ((SPADCALL |x| (|getShellEntry| $ 18))
(|error| "Index out of range"))
- ('T (SPADCALL |x| (|getShellEntry| $ 22)))))
+ ('T (SPADCALL |x| (|getShellEntry| $ 19)))))
(DEFUN |STAGG-;elt;AIS;5| (|x| |i| $)
- (SEQ (LETT |i| (- |i| (SPADCALL |x| (|getShellEntry| $ 24)))
+ (SEQ (LETT |i| (- |i| (SPADCALL |x| (|getShellEntry| $ 21)))
|STAGG-;elt;AIS;5|)
(COND
((OR (< |i| 0)
@@ -87,62 +87,62 @@
(PROG1 |i|
(|check-subtype| (>= |i| 0)
'(|NonNegativeInteger|) |i|))
- (|getShellEntry| $ 28))
+ (|getShellEntry| $ 25))
|STAGG-;elt;AIS;5|)
- (|getShellEntry| $ 21)))
+ (|getShellEntry| $ 18)))
(EXIT (|error| "index out of range"))))
- (EXIT (SPADCALL |x| (|getShellEntry| $ 22)))))
+ (EXIT (SPADCALL |x| (|getShellEntry| $ 19)))))
(DEFUN |STAGG-;elt;AUsA;6| (|x| |i| $)
(PROG (|l| |h| #0=#:G1416)
(RETURN
(SEQ (LETT |l|
- (- (SPADCALL |i| (|getShellEntry| $ 31))
- (SPADCALL |x| (|getShellEntry| $ 24)))
+ (- (SPADCALL |i| (|getShellEntry| $ 28))
+ (SPADCALL |x| (|getShellEntry| $ 21)))
|STAGG-;elt;AUsA;6|)
(EXIT (COND
((< |l| 0) (|error| "index out of range"))
- ((NOT (SPADCALL |i| (|getShellEntry| $ 32)))
+ ((NOT (SPADCALL |i| (|getShellEntry| $ 29)))
(SPADCALL
(SPADCALL |x|
(PROG1 |l|
(|check-subtype| (>= |l| 0)
'(|NonNegativeInteger|) |l|))
- (|getShellEntry| $ 28))
- (|getShellEntry| $ 33)))
+ (|getShellEntry| $ 25))
+ (|getShellEntry| $ 30)))
('T
(SEQ (LETT |h|
- (- (SPADCALL |i| (|getShellEntry| $ 34))
- (SPADCALL |x| (|getShellEntry| $ 24)))
+ (- (SPADCALL |i| (|getShellEntry| $ 31))
+ (SPADCALL |x| (|getShellEntry| $ 21)))
|STAGG-;elt;AUsA;6|)
(EXIT (COND
((< |h| |l|)
- (SPADCALL (|getShellEntry| $ 35)))
+ (SPADCALL (|getShellEntry| $ 32)))
('T
(SPADCALL
(SPADCALL |x|
(PROG1 |l|
(|check-subtype| (>= |l| 0)
'(|NonNegativeInteger|) |l|))
- (|getShellEntry| $ 28))
+ (|getShellEntry| $ 25))
(PROG1
(LETT #0# (+ (- |h| |l|) 1)
|STAGG-;elt;AUsA;6|)
(|check-subtype| (>= #0# 0)
'(|NonNegativeInteger|) #0#))
- (|getShellEntry| $ 37)))))))))))))
+ (|getShellEntry| $ 35)))))))))))))
(DEFUN |STAGG-;concat;3A;7| (|x| |y| $)
- (SPADCALL (SPADCALL |x| (|getShellEntry| $ 33)) |y|
- (|getShellEntry| $ 39)))
+ (SPADCALL (SPADCALL |x| (|getShellEntry| $ 30)) |y|
+ (|getShellEntry| $ 37)))
(DEFUN |STAGG-;concat;LA;8| (|l| $)
(COND
- ((NULL |l|) (SPADCALL (|getShellEntry| $ 35)))
+ ((NULL |l|) (SPADCALL (|getShellEntry| $ 32)))
('T
- (SPADCALL (SPADCALL (|SPADfirst| |l|) (|getShellEntry| $ 33))
- (SPADCALL (CDR |l|) (|getShellEntry| $ 46))
- (|getShellEntry| $ 39)))))
+ (SPADCALL (SPADCALL (|SPADfirst| |l|) (|getShellEntry| $ 30))
+ (SPADCALL (CDR |l|) (|getShellEntry| $ 44))
+ (|getShellEntry| $ 37)))))
(DEFUN |STAGG-;map!;M2A;9| (|f| |l| $)
(PROG (|y|)
@@ -150,14 +150,14 @@
(SEQ (LETT |y| |l| |STAGG-;map!;M2A;9|)
(SEQ G190
(COND
- ((NULL (NOT (SPADCALL |l| (|getShellEntry| $ 21))))
+ ((NULL (NOT (SPADCALL |l| (|getShellEntry| $ 18))))
(GO G191)))
(SEQ (SPADCALL |l|
(SPADCALL
- (SPADCALL |l| (|getShellEntry| $ 22)) |f|)
- (|getShellEntry| $ 48))
+ (SPADCALL |l| (|getShellEntry| $ 19)) |f|)
+ (|getShellEntry| $ 46))
(EXIT (LETT |l|
- (SPADCALL |l| (|getShellEntry| $ 17))
+ (SPADCALL |l| (|getShellEntry| $ 13))
|STAGG-;map!;M2A;9|)))
NIL (GO G190) G191 (EXIT NIL))
(EXIT |y|)))))
@@ -168,17 +168,17 @@
(SEQ (LETT |y| |x| |STAGG-;fill!;ASA;10|)
(SEQ G190
(COND
- ((NULL (NOT (SPADCALL |y| (|getShellEntry| $ 21))))
+ ((NULL (NOT (SPADCALL |y| (|getShellEntry| $ 18))))
(GO G191)))
- (SEQ (SPADCALL |y| |s| (|getShellEntry| $ 48))
+ (SEQ (SPADCALL |y| |s| (|getShellEntry| $ 46))
(EXIT (LETT |y|
- (SPADCALL |y| (|getShellEntry| $ 17))
+ (SPADCALL |y| (|getShellEntry| $ 13))
|STAGG-;fill!;ASA;10|)))
NIL (GO G190) G191 (EXIT NIL))
(EXIT |x|)))))
(DEFUN |STAGG-;setelt;AI2S;11| (|x| |i| |s| $)
- (SEQ (LETT |i| (- |i| (SPADCALL |x| (|getShellEntry| $ 24)))
+ (SEQ (LETT |i| (- |i| (SPADCALL |x| (|getShellEntry| $ 21)))
|STAGG-;setelt;AI2S;11|)
(COND
((OR (< |i| 0)
@@ -188,31 +188,31 @@
(PROG1 |i|
(|check-subtype| (>= |i| 0)
'(|NonNegativeInteger|) |i|))
- (|getShellEntry| $ 28))
+ (|getShellEntry| $ 25))
|STAGG-;setelt;AI2S;11|)
- (|getShellEntry| $ 21)))
+ (|getShellEntry| $ 18)))
(EXIT (|error| "index out of range"))))
- (EXIT (SPADCALL |x| |s| (|getShellEntry| $ 48)))))
+ (EXIT (SPADCALL |x| |s| (|getShellEntry| $ 46)))))
(DEFUN |STAGG-;setelt;AUs2S;12| (|x| |i| |s| $)
(PROG (|l| |h| #0=#:G1436 |z| |y|)
(RETURN
(SEQ (LETT |l|
- (- (SPADCALL |i| (|getShellEntry| $ 31))
- (SPADCALL |x| (|getShellEntry| $ 24)))
+ (- (SPADCALL |i| (|getShellEntry| $ 28))
+ (SPADCALL |x| (|getShellEntry| $ 21)))
|STAGG-;setelt;AUs2S;12|)
(EXIT (COND
((< |l| 0) (|error| "index out of range"))
('T
(SEQ (LETT |h|
(COND
- ((SPADCALL |i| (|getShellEntry| $ 32))
+ ((SPADCALL |i| (|getShellEntry| $ 29))
(- (SPADCALL |i|
- (|getShellEntry| $ 34))
+ (|getShellEntry| $ 31))
(SPADCALL |x|
- (|getShellEntry| $ 24))))
+ (|getShellEntry| $ 21))))
('T
- (SPADCALL |x| (|getShellEntry| $ 53))))
+ (SPADCALL |x| (|getShellEntry| $ 51))))
|STAGG-;setelt;AUs2S;12|)
(EXIT (COND
((< |h| |l|) |s|)
@@ -223,7 +223,7 @@
(|check-subtype| (>= |l| 0)
'(|NonNegativeInteger|)
|l|))
- (|getShellEntry| $ 28))
+ (|getShellEntry| $ 25))
|STAGG-;setelt;AUs2S;12|)
(LETT |z|
(SPADCALL |y|
@@ -233,32 +233,32 @@
(|check-subtype| (>= #0# 0)
'(|NonNegativeInteger|)
#0#))
- (|getShellEntry| $ 28))
+ (|getShellEntry| $ 25))
|STAGG-;setelt;AUs2S;12|)
(SEQ G190
(COND
((NULL
(NOT
(SPADCALL |y| |z|
- (|getShellEntry| $ 54))))
+ (|getShellEntry| $ 52))))
(GO G191)))
(SEQ
(SPADCALL |y| |s|
- (|getShellEntry| $ 48))
+ (|getShellEntry| $ 46))
(EXIT
(LETT |y|
(SPADCALL |y|
- (|getShellEntry| $ 17))
+ (|getShellEntry| $ 13))
|STAGG-;setelt;AUs2S;12|)))
NIL (GO G190) G191 (EXIT NIL))
(EXIT |s|)))))))))))))
(DEFUN |STAGG-;concat!;3A;13| (|x| |y| $)
(SEQ (COND
- ((SPADCALL |x| (|getShellEntry| $ 21)) |y|)
+ ((SPADCALL |x| (|getShellEntry| $ 18)) |y|)
('T
- (SEQ (SPADCALL (SPADCALL |x| (|getShellEntry| $ 56)) |y|
- (|getShellEntry| $ 57))
+ (SEQ (SPADCALL (SPADCALL |x| (|getShellEntry| $ 54)) |y|
+ (|getShellEntry| $ 55))
(EXIT |x|))))))
(DEFUN |StreamAggregate&| (|#1| |#2|)
@@ -268,7 +268,7 @@
(LETT |dv$1| (|devaluate| |#1|) . #0=(|StreamAggregate&|))
(LETT |dv$2| (|devaluate| |#2|) . #0#)
(LETT |dv$| (LIST '|StreamAggregate&| |dv$1| |dv$2|) . #0#)
- (LETT $ (|newShell| 63) . #0#)
+ (LETT $ (|newShell| 61) . #0#)
(|setShellEntry| $ 0 |dv$|)
(|setShellEntry| $ 3
(LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#))
@@ -278,19 +278,19 @@
(COND
((|HasAttribute| |#1| '|shallowlyMutable|)
(PROGN
- (|setShellEntry| $ 40
+ (|setShellEntry| $ 38
(CONS (|dispatchFunction| |STAGG-;concat;3A;7|) $))
- (|setShellEntry| $ 47
+ (|setShellEntry| $ 45
(CONS (|dispatchFunction| |STAGG-;concat;LA;8|) $))
- (|setShellEntry| $ 50
+ (|setShellEntry| $ 48
(CONS (|dispatchFunction| |STAGG-;map!;M2A;9|) $))
- (|setShellEntry| $ 51
+ (|setShellEntry| $ 49
(CONS (|dispatchFunction| |STAGG-;fill!;ASA;10|) $))
- (|setShellEntry| $ 52
+ (|setShellEntry| $ 50
(CONS (|dispatchFunction| |STAGG-;setelt;AI2S;11|) $))
- (|setShellEntry| $ 55
+ (|setShellEntry| $ 53
(CONS (|dispatchFunction| |STAGG-;setelt;AUs2S;12|) $))
- (|setShellEntry| $ 58
+ (|setShellEntry| $ 56
(CONS (|dispatchFunction| |STAGG-;concat!;3A;13|) $)))))
$))))
@@ -298,45 +298,44 @@
(LIST '#(NIL NIL NIL NIL NIL NIL (|local| |#1|) (|local| |#2|)
(|Boolean|) (0 . |cyclic?|) (5 . |not|)
|STAGG-;explicitlyFinite?;AB;1|
- |STAGG-;possiblyInfinite?;AB;2| (|SingleInteger|)
- (10 . |One|) (|NonNegativeInteger|) (14 . |One|)
- (18 . |rest|) (|List| 7) (23 . |construct|)
- |STAGG-;first;ANniA;3| (28 . |empty?|) (33 . |first|)
- (|Integer|) (38 . |minIndex|) (43 . -) (49 . |Zero|)
- (53 . <) (59 . |rest|) |STAGG-;elt;AIS;5|
- (|UniversalSegment| 23) (65 . |lo|) (70 . |hasHi|)
- (75 . |copy|) (80 . |hi|) (85 . |empty|) (89 . +)
- (95 . |first|) |STAGG-;elt;AUsA;6| (101 . |concat!|)
- (107 . |concat|) (|List| 6) (113 . |empty?|)
- (118 . |first|) (123 . |rest|) (|List| $) (128 . |concat|)
- (133 . |concat|) (138 . |setfirst!|) (|Mapping| 7 7)
- (144 . |map!|) (150 . |fill!|) (156 . |setelt|)
- (163 . |maxIndex|) (168 . |eq?|) (174 . |setelt|)
- (181 . |tail|) (186 . |setrest!|) (192 . |concat!|)
- '"rest" '"last" '"first" '"value")
- '#(|setelt| 198 |possiblyInfinite?| 212 |map!| 217 |first|
- 223 |fill!| 229 |explicitlyFinite?| 235 |elt| 240
- |concat!| 252 |concat| 258)
+ |STAGG-;possiblyInfinite?;AB;2| (10 . |rest|) (|List| 7)
+ (15 . |construct|) (|NonNegativeInteger|)
+ |STAGG-;first;ANniA;3| (20 . |empty?|) (25 . |first|)
+ (|Integer|) (30 . |minIndex|) (35 . -) (41 . |Zero|)
+ (45 . <) (51 . |rest|) |STAGG-;elt;AIS;5|
+ (|UniversalSegment| 20) (57 . |lo|) (62 . |hasHi|)
+ (67 . |copy|) (72 . |hi|) (77 . |empty|) (81 . |One|)
+ (85 . +) (91 . |first|) |STAGG-;elt;AUsA;6|
+ (97 . |concat!|) (103 . |concat|) (|List| 6)
+ (109 . |empty?|) (114 . |first|) (119 . |rest|) (|List| $)
+ (124 . |concat|) (129 . |concat|) (134 . |setfirst!|)
+ (|Mapping| 7 7) (140 . |map!|) (146 . |fill!|)
+ (152 . |setelt|) (159 . |maxIndex|) (164 . |eq?|)
+ (170 . |setelt|) (177 . |tail|) (182 . |setrest!|)
+ (188 . |concat!|) '"rest" '"last" '"first" '"value")
+ '#(|setelt| 194 |possiblyInfinite?| 208 |map!| 213 |first|
+ 219 |fill!| 225 |explicitlyFinite?| 231 |elt| 236
+ |concat!| 248 |concat| 254)
'NIL
(CONS (|makeByteWordVec2| 1 'NIL)
(CONS '#()
(CONS '#()
- (|makeByteWordVec2| 58
- '(1 6 8 0 9 1 8 0 0 10 0 13 0 14 0 15 0
- 16 1 6 0 0 17 1 6 0 18 19 1 6 8 0 21
- 1 6 7 0 22 1 6 23 0 24 2 23 0 0 0 25
- 0 23 0 26 2 23 8 0 0 27 2 6 0 0 15 28
- 1 30 23 0 31 1 30 8 0 32 1 6 0 0 33 1
- 30 23 0 34 0 6 0 35 2 23 0 0 0 36 2 6
- 0 0 15 37 2 6 0 0 0 39 2 0 0 0 0 40 1
- 41 8 0 42 1 41 6 0 43 1 41 0 0 44 1 6
- 0 45 46 1 0 0 45 47 2 6 7 0 7 48 2 0
- 0 49 0 50 2 0 0 0 7 51 3 0 7 0 23 7
- 52 1 6 23 0 53 2 6 8 0 0 54 3 0 7 0
- 30 7 55 1 6 0 0 56 2 6 0 0 0 57 2 0 0
- 0 0 58 3 0 7 0 23 7 52 3 0 7 0 30 7
- 55 1 0 8 0 12 2 0 0 49 0 50 2 0 0 0
- 15 20 2 0 0 0 7 51 1 0 8 0 11 2 0 7 0
- 23 29 2 0 0 0 30 38 2 0 0 0 0 58 1 0
- 0 45 47 2 0 0 0 0 40)))))
+ (|makeByteWordVec2| 56
+ '(1 6 8 0 9 1 8 0 0 10 1 6 0 0 13 1 6 0
+ 14 15 1 6 8 0 18 1 6 7 0 19 1 6 20 0
+ 21 2 20 0 0 0 22 0 20 0 23 2 20 8 0 0
+ 24 2 6 0 0 16 25 1 27 20 0 28 1 27 8
+ 0 29 1 6 0 0 30 1 27 20 0 31 0 6 0 32
+ 0 16 0 33 2 20 0 0 0 34 2 6 0 0 16 35
+ 2 6 0 0 0 37 2 0 0 0 0 38 1 39 8 0 40
+ 1 39 6 0 41 1 39 0 0 42 1 6 0 43 44 1
+ 0 0 43 45 2 6 7 0 7 46 2 0 0 47 0 48
+ 2 0 0 0 7 49 3 0 7 0 20 7 50 1 6 20 0
+ 51 2 6 8 0 0 52 3 0 7 0 27 7 53 1 6 0
+ 0 54 2 6 0 0 0 55 2 0 0 0 0 56 3 0 7
+ 0 20 7 50 3 0 7 0 27 7 53 1 0 8 0 12
+ 2 0 0 47 0 48 2 0 0 0 16 17 2 0 0 0 7
+ 49 1 0 8 0 11 2 0 7 0 20 26 2 0 0 0
+ 27 36 2 0 0 0 0 56 1 0 0 43 45 2 0 0
+ 0 0 38)))))
'|lookupComplete|))
diff --git a/src/algebra/strap/SYMBOL.lsp b/src/algebra/strap/SYMBOL.lsp
index 724e0087..b5df14c9 100644
--- a/src/algebra/strap/SYMBOL.lsp
+++ b/src/algebra/strap/SYMBOL.lsp
@@ -581,7 +581,7 @@
(SPADCALL
(SPADCALL |str| |i|
(|getShellEntry| $ 106))
- (|getShellEntry| $ 141)))
+ (|getShellEntry| $ 139)))
(PROGN
(LETT #2#
(PROGN
@@ -591,9 +591,9 @@
(SPADCALL |i|
(QCSIZE |str|)
(|getShellEntry| $
- 143))
+ 141))
(|getShellEntry| $
- 144))
+ 142))
$)
|SYMBOL;name;2$;31|)
(GO #1#))
@@ -626,7 +626,7 @@
|SYMBOL;scripts;$R;32|)
(LETT |nstr| (QCSIZE |str|) |SYMBOL;scripts;$R;32|)
(LETT |m|
- (SPADCALL |nscripts| (|getShellEntry| $ 146))
+ (SPADCALL |nscripts| (|getShellEntry| $ 144))
|SYMBOL;scripts;$R;32|)
(SEQ (LETT |j| (+ (|getShellEntry| $ 41) 1)
|SYMBOL;scripts;$R;32|)
@@ -636,7 +636,7 @@
(NULL (SPADCALL
(SPADCALL |str| |j|
(|getShellEntry| $ 106))
- (|getShellEntry| $ 141))))
+ (|getShellEntry| $ 139))))
(GO G191)))
(SPADCALL |nscripts| |i|
(PROG1 (LETT #0#
@@ -765,7 +765,7 @@
(RETURN
(PROGN
(LETT |dv$| '(|Symbol|) . #0=(|Symbol|))
- (LETT $ (|newShell| 164) . #0#)
+ (LETT $ (|newShell| 165) . #0#)
(|setShellEntry| $ 0 |dv$|)
(|setShellEntry| $ 3
(LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#))
@@ -838,17 +838,19 @@
(293 . |maxIndex|) (298 . |position|) (304 . >=)
|SYMBOL;new;2$;28| (|List| $$) (310 . |keys|)
(315 . |remove!|) |SYMBOL;resetNew;V;29|
- |SYMBOL;list;$L;34| (321 . |first|) (|SingleInteger|)
- (326 . |One|) (330 . +) (336 . |digit?|)
- (|UniversalSegment| 6) (341 . SEGMENT) (347 . |elt|)
- (|List| 39) (353 . |minIndex|) (358 . -) (364 . |setelt|)
- (371 . |rest|) (376 . |first|) (381 . |concat|)
- (387 . |rest|) (392 . |minIndex|) (397 . |#|) (402 . <)
- (408 . |first|) (414 . |setelt|) (421 . |rest|)
- (427 . |elt|) (433 . >) (439 . |minIndex|) (444 . |elt|)
+ |SYMBOL;list;$L;34| (321 . |first|) (326 . +)
+ (332 . |digit?|) (|UniversalSegment| 6) (337 . SEGMENT)
+ (343 . |elt|) (|List| 39) (349 . |minIndex|)
+ (|PositiveInteger|) (354 . |One|) (358 . -)
+ (364 . |setelt|) (371 . |rest|) (376 . |first|)
+ (381 . |concat|) (387 . |rest|) (392 . |minIndex|)
+ (397 . |#|) (402 . <) (408 . |first|) (414 . |setelt|)
+ (421 . |rest|) (427 . |elt|) (433 . >) (439 . |minIndex|)
+ (444 . |elt|)
(CONS IDENTITY
(FUNCALL (|dispatchFunction| |SYMBOL;sample;$;35|)
- $)))
+ $))
+ (|SingleInteger|))
'#(~= 450 |superscript| 456 |subscript| 462 |string| 468
|scripts| 473 |scripted?| 478 |script| 483 |sample| 495
|resetNew| 499 |patternMatch| 503 |new| 517 |name| 526
@@ -867,7 +869,7 @@
(|CoercibleFrom| 14)
(|ConvertibleTo| 25) (|OpenMath|)
(|ConvertibleTo| 46) (|CoercibleTo| 53))
- (|makeByteWordVec2| 163
+ (|makeByteWordVec2| 164
'(0 6 0 7 1 8 0 6 9 0 11 0 12 1 16 0 15
17 2 26 24 0 25 27 0 28 0 29 2 26 0
14 28 30 1 26 24 0 31 1 26 24 0 32 1
@@ -890,11 +892,11 @@
0 124 0 39 0 125 1 6 0 0 126 3 11 6 0
2 6 127 1 14 6 0 128 2 14 6 42 0 129
2 6 22 0 0 130 1 11 132 0 133 2 11
- 123 2 0 134 1 132 2 0 137 0 138 0 139
- 2 39 0 0 0 140 1 42 22 0 141 2 142 0
- 6 6 143 2 14 0 0 142 144 1 145 6 0
- 146 2 6 0 0 0 147 3 145 39 0 6 39 148
- 1 145 0 0 149 1 145 39 0 150 2 145 0
+ 123 2 0 134 1 132 2 0 137 2 39 0 0 0
+ 138 1 42 22 0 139 2 140 0 6 6 141 2
+ 14 0 0 140 142 1 143 6 0 144 0 145 0
+ 146 2 6 0 0 0 147 3 143 39 0 6 39 148
+ 1 143 0 0 149 1 143 39 0 150 2 143 0
0 39 151 1 132 0 0 152 1 58 6 0 153 1
132 39 0 154 2 39 22 0 0 155 2 132 0
0 39 156 3 58 56 0 6 56 157 2 132 0 0
@@ -906,7 +908,7 @@
24 135 3 0 75 0 72 75 76 3 0 68 0 65
68 69 1 0 0 0 131 0 0 0 122 1 0 0 0
100 2 0 0 0 0 1 2 0 0 0 0 1 1 0 92 0
- 136 1 0 14 0 114 1 0 138 0 1 2 0 0 0
+ 136 1 0 14 0 114 1 0 164 0 1 2 0 0 0
56 61 1 0 65 0 80 1 0 72 0 78 1 0 25
0 49 1 0 46 0 48 1 0 0 14 50 1 0 53 0
55 2 0 22 0 0 1 2 0 0 0 56 63 2 0 24
diff --git a/src/algebra/strap/URAGG-.lsp b/src/algebra/strap/URAGG-.lsp
index 3cde7fc7..45a75b9c 100644
--- a/src/algebra/strap/URAGG-.lsp
+++ b/src/algebra/strap/URAGG-.lsp
@@ -235,7 +235,7 @@
(SEQ (COND
((EQL |k| 1000)
(COND
- ((SPADCALL |x| (|getShellEntry| $ 50))
+ ((SPADCALL |x| (|getShellEntry| $ 48))
(EXIT (|error| "cyclic list"))))))
(EXIT (LETT |x|
(SPADCALL |x| (|getShellEntry| $ 14))
@@ -262,7 +262,7 @@
((EQL |k| 1000)
(COND
((SPADCALL |x|
- (|getShellEntry| $ 50))
+ (|getShellEntry| $ 48))
(EXIT (|error| "cyclic list"))))))
(EXIT (LETT |y|
(SPADCALL
@@ -286,7 +286,7 @@
(GO G191)))
(SEQ (COND
((SPADCALL |x| |y|
- (|getShellEntry| $ 53))
+ (|getShellEntry| $ 51))
(PROGN
(LETT #0# |x| |URAGG-;findCycle|)
(GO #0#))))
@@ -306,7 +306,7 @@
(GO #0#))))
(COND
((SPADCALL |x| |y|
- (|getShellEntry| $ 53))
+ (|getShellEntry| $ 51))
(PROGN
(LETT #0# |y| |URAGG-;findCycle|)
(GO #0#))))
@@ -324,7 +324,7 @@
(SEQ (COND
((SPADCALL
(LETT |y|
- (LETT |x| (SPADCALL |x| (|getShellEntry| $ 54))
+ (LETT |x| (SPADCALL |x| (|getShellEntry| $ 52))
|URAGG-;cycleTail;2A;18|)
|URAGG-;cycleTail;2A;18|)
(|getShellEntry| $ 20))
@@ -335,7 +335,7 @@
(SEQ G190
(COND
((NULL (NOT (SPADCALL |x| |z|
- (|getShellEntry| $ 53))))
+ (|getShellEntry| $ 51))))
(GO G191)))
(SEQ (LETT |y| |z| |URAGG-;cycleTail;2A;18|)
(EXIT (LETT |z|
@@ -361,7 +361,7 @@
(SEQ (LETT |l| 1 |URAGG-;cycleEntry;2A;19|) G190
(COND
((NULL (NOT (SPADCALL |y| |z|
- (|getShellEntry| $ 53))))
+ (|getShellEntry| $ 51))))
(GO G191)))
(LETT |z| (SPADCALL |z| (|getShellEntry| $ 14))
|URAGG-;cycleEntry;2A;19|)
@@ -379,7 +379,7 @@
(SEQ G190
(COND
((NULL (NOT (SPADCALL |x| |y|
- (|getShellEntry| $ 53))))
+ (|getShellEntry| $ 51))))
(GO G191)))
(SEQ (LETT |x|
(SPADCALL |x|
@@ -408,7 +408,7 @@
(SEQ (LETT |k| 1 |URAGG-;cycleLength;ANni;20|) G190
(COND
((NULL (NOT (SPADCALL |x| |y|
- (|getShellEntry| $ 53))))
+ (|getShellEntry| $ 51))))
(GO G191)))
(LETT |y| (SPADCALL |y| (|getShellEntry| $ 14))
|URAGG-;cycleLength;ANni;20|)
@@ -437,7 +437,7 @@
(DEFUN |URAGG-;last;ANniA;22| (|x| |n| $)
(PROG (|m| #0=#:G1497)
(RETURN
- (SEQ (LETT |m| (SPADCALL |x| (|getShellEntry| $ 60))
+ (SEQ (LETT |m| (SPADCALL |x| (|getShellEntry| $ 57))
|URAGG-;last;ANniA;22|)
(EXIT (COND
((> |n| |m|) (|error| "index out of range"))
@@ -448,14 +448,14 @@
|URAGG-;last;ANniA;22|)
(|check-subtype| (>= #0# 0)
'(|NonNegativeInteger|) #0#))
- (|getShellEntry| $ 62))
- (|getShellEntry| $ 63)))))))))
+ (|getShellEntry| $ 59))
+ (|getShellEntry| $ 60)))))))))
(DEFUN |URAGG-;=;2AB;23| (|x| |y| $)
(PROG (|k| #0=#:G1507)
(RETURN
(SEQ (EXIT (COND
- ((SPADCALL |x| |y| (|getShellEntry| $ 53)) T)
+ ((SPADCALL |x| |y| (|getShellEntry| $ 51)) T)
('T
(SEQ (SEQ (LETT |k| 0 |URAGG-;=;2AB;23|) G190
(COND
@@ -472,7 +472,7 @@
((EQL |k| 1000)
(COND
((SPADCALL |x|
- (|getShellEntry| $ 50))
+ (|getShellEntry| $ 48))
(EXIT (|error| "cyclic list"))))))
(EXIT
(COND
@@ -481,7 +481,7 @@
(|getShellEntry| $ 8))
(SPADCALL |y|
(|getShellEntry| $ 8))
- (|getShellEntry| $ 66))
+ (|getShellEntry| $ 63))
(PROGN
(LETT #0# NIL
|URAGG-;=;2AB;23|)
@@ -516,7 +516,7 @@
(GO G191)))
(SEQ (EXIT (COND
((SPADCALL |u| |v|
- (|getShellEntry| $ 68))
+ (|getShellEntry| $ 65))
(PROGN
(LETT #0# T
|URAGG-;node?;2AB;24|)
@@ -527,7 +527,7 @@
((EQL |k| 1000)
(COND
((SPADCALL |v|
- (|getShellEntry| $ 50))
+ (|getShellEntry| $ 48))
(EXIT
(|error|
"cyclic list"))))))
@@ -539,21 +539,21 @@
(LETT |k| (QSADD1 |k|)
|URAGG-;node?;2AB;24|)
(GO G190) G191 (EXIT NIL))
- (EXIT (SPADCALL |u| |v| (|getShellEntry| $ 68)))))
+ (EXIT (SPADCALL |u| |v| (|getShellEntry| $ 65)))))
#0# (EXIT #0#)))))
(DEFUN |URAGG-;setelt;Afirst2S;25| (|x| T3 |a| $)
- (SPADCALL |x| |a| (|getShellEntry| $ 70)))
+ (SPADCALL |x| |a| (|getShellEntry| $ 67)))
(DEFUN |URAGG-;setelt;Alast2S;26| (|x| T4 |a| $)
- (SPADCALL |x| |a| (|getShellEntry| $ 72)))
+ (SPADCALL |x| |a| (|getShellEntry| $ 69)))
(DEFUN |URAGG-;setelt;Arest2A;27| (|x| T5 |a| $)
- (SPADCALL |x| |a| (|getShellEntry| $ 74)))
+ (SPADCALL |x| |a| (|getShellEntry| $ 71)))
(DEFUN |URAGG-;concat;3A;28| (|x| |y| $)
- (SPADCALL (SPADCALL |x| (|getShellEntry| $ 63)) |y|
- (|getShellEntry| $ 76)))
+ (SPADCALL (SPADCALL |x| (|getShellEntry| $ 60)) |y|
+ (|getShellEntry| $ 73)))
(DEFUN |URAGG-;setlast!;A2S;29| (|x| |s| $)
(SEQ (COND
@@ -561,17 +561,17 @@
(|error| "setlast: empty list"))
('T
(SEQ (SPADCALL (SPADCALL |x| (|getShellEntry| $ 24)) |s|
- (|getShellEntry| $ 70))
+ (|getShellEntry| $ 67))
(EXIT |s|))))))
(DEFUN |URAGG-;setchildren!;ALA;30| (|u| |lv| $)
(COND
((EQL (LENGTH |lv|) 1)
- (SPADCALL |u| (|SPADfirst| |lv|) (|getShellEntry| $ 74)))
+ (SPADCALL |u| (|SPADfirst| |lv|) (|getShellEntry| $ 71)))
('T (|error| "wrong number of children specified"))))
(DEFUN |URAGG-;setvalue!;A2S;31| (|u| |s| $)
- (SPADCALL |u| |s| (|getShellEntry| $ 70)))
+ (SPADCALL |u| |s| (|getShellEntry| $ 67)))
(DEFUN |URAGG-;split!;AIA;32| (|p| |n| $)
(PROG (#0=#:G1523 |q|)
@@ -585,12 +585,12 @@
|URAGG-;split!;AIA;32|)
(|check-subtype| (>= #0# 0)
'(|NonNegativeInteger|) #0#))
- (|getShellEntry| $ 62))
+ (|getShellEntry| $ 59))
|URAGG-;split!;AIA;32|)
(LETT |q| (SPADCALL |p| (|getShellEntry| $ 14))
|URAGG-;split!;AIA;32|)
- (SPADCALL |p| (SPADCALL (|getShellEntry| $ 84))
- (|getShellEntry| $ 74))
+ (SPADCALL |p| (SPADCALL (|getShellEntry| $ 81))
+ (|getShellEntry| $ 71))
(EXIT |q|))))))))
(DEFUN |URAGG-;cycleSplit!;2A;33| (|x| $)
@@ -598,10 +598,10 @@
(RETURN
(SEQ (COND
((OR (SPADCALL
- (LETT |y| (SPADCALL |x| (|getShellEntry| $ 54))
+ (LETT |y| (SPADCALL |x| (|getShellEntry| $ 52))
|URAGG-;cycleSplit!;2A;33|)
(|getShellEntry| $ 20))
- (SPADCALL |x| |y| (|getShellEntry| $ 53)))
+ (SPADCALL |x| |y| (|getShellEntry| $ 51)))
|y|)
('T
(SEQ (LETT |z| (SPADCALL |x| (|getShellEntry| $ 14))
@@ -609,7 +609,7 @@
(SEQ G190
(COND
((NULL (NOT (SPADCALL |z| |y|
- (|getShellEntry| $ 53))))
+ (|getShellEntry| $ 51))))
(GO G191)))
(SEQ (LETT |x| |z| |URAGG-;cycleSplit!;2A;33|)
(EXIT (LETT |z|
@@ -617,8 +617,8 @@
(|getShellEntry| $ 14))
|URAGG-;cycleSplit!;2A;33|)))
NIL (GO G190) G191 (EXIT NIL))
- (SPADCALL |x| (SPADCALL (|getShellEntry| $ 84))
- (|getShellEntry| $ 74))
+ (SPADCALL |x| (SPADCALL (|getShellEntry| $ 81))
+ (|getShellEntry| $ 71))
(EXIT |y|))))))))
(DEFUN |UnaryRecursiveAggregate&| (|#1| |#2|)
@@ -630,7 +630,7 @@
(LETT |dv$2| (|devaluate| |#2|) . #0#)
(LETT |dv$|
(LIST '|UnaryRecursiveAggregate&| |dv$1| |dv$2|) . #0#)
- (LETT $ (|newShell| 88) . #0#)
+ (LETT $ (|newShell| 85) . #0#)
(|setShellEntry| $ 0 |dv$|)
(|setShellEntry| $ 3
(LETT |pv$|
@@ -641,41 +641,41 @@
(|setShellEntry| $ 7 |#2|)
(COND
((|HasAttribute| |#1| '|finiteAggregate|)
- (|setShellEntry| $ 64
+ (|setShellEntry| $ 61
(CONS (|dispatchFunction| |URAGG-;last;ANniA;22|) $))))
(COND
((|HasCategory| |#2| '(|SetCategory|))
(PROGN
- (|setShellEntry| $ 67
+ (|setShellEntry| $ 64
(CONS (|dispatchFunction| |URAGG-;=;2AB;23|) $))
- (|setShellEntry| $ 69
+ (|setShellEntry| $ 66
(CONS (|dispatchFunction| |URAGG-;node?;2AB;24|) $)))))
(COND
((|testBitVector| |pv$| 1)
(PROGN
- (|setShellEntry| $ 71
+ (|setShellEntry| $ 68
(CONS (|dispatchFunction| |URAGG-;setelt;Afirst2S;25|)
$))
- (|setShellEntry| $ 73
+ (|setShellEntry| $ 70
(CONS (|dispatchFunction| |URAGG-;setelt;Alast2S;26|)
$))
- (|setShellEntry| $ 75
+ (|setShellEntry| $ 72
(CONS (|dispatchFunction| |URAGG-;setelt;Arest2A;27|)
$))
- (|setShellEntry| $ 77
+ (|setShellEntry| $ 74
(CONS (|dispatchFunction| |URAGG-;concat;3A;28|) $))
- (|setShellEntry| $ 78
+ (|setShellEntry| $ 75
(CONS (|dispatchFunction| |URAGG-;setlast!;A2S;29|) $))
- (|setShellEntry| $ 81
+ (|setShellEntry| $ 78
(CONS (|dispatchFunction|
|URAGG-;setchildren!;ALA;30|)
$))
- (|setShellEntry| $ 82
+ (|setShellEntry| $ 79
(CONS (|dispatchFunction| |URAGG-;setvalue!;A2S;31|)
$))
- (|setShellEntry| $ 85
+ (|setShellEntry| $ 82
(CONS (|dispatchFunction| |URAGG-;split!;AIA;32|) $))
- (|setShellEntry| $ 86
+ (|setShellEntry| $ 83
(CONS (|dispatchFunction| |URAGG-;cycleSplit!;2A;33|)
$)))))
$))))
@@ -694,59 +694,58 @@
(|NonNegativeInteger|) (49 . |Zero|) (|Integer|)
(53 . |Zero|) (57 . >) (63 . |One|) (67 . |One|) (71 . -)
|URAGG-;less?;ANniB;12| (77 . |zero?|)
- |URAGG-;more?;ANniB;13| |URAGG-;size?;ANniB;14|
- (|SingleInteger|) (82 . |Zero|) (86 . =) (92 . |cyclic?|)
- |URAGG-;#;ANni;15| |URAGG-;tail;2A;16| (97 . |eq?|)
- (103 . |cycleEntry|) |URAGG-;cycleTail;2A;18|
- (108 . |One|) |URAGG-;cycleEntry;2A;19|
- |URAGG-;cycleLength;ANni;20| |URAGG-;rest;ANniA;21|
- (112 . |#|) (117 . >) (123 . |rest|) (129 . |copy|)
- (134 . |last|) (140 . |true|) (144 . ~=) (150 . =)
- (156 . =) (162 . |node?|) (168 . |setfirst!|)
- (174 . |setelt|) (181 . |setlast!|) (187 . |setelt|)
- (194 . |setrest!|) (200 . |setelt|) (207 . |concat!|)
- (213 . |concat|) (219 . |setlast!|) (225 . |#|)
- (230 . |first|) (235 . |setchildren!|) (241 . |setvalue!|)
- (247 . <) (253 . |empty|) (257 . |split!|)
- (263 . |cycleSplit!|) '"value")
- '#(|value| 268 |third| 273 |tail| 278 |split!| 283 |size?|
- 289 |setvalue!| 295 |setlast!| 301 |setelt| 307
- |setchildren!| 328 |second| 334 |rest| 339 |nodes| 345
- |node?| 350 |more?| 356 |less?| 362 |leaf?| 368 |last| 373
- |elt| 384 |cyclic?| 402 |cycleTail| 407 |cycleSplit!| 412
- |cycleLength| 417 |cycleEntry| 422 |concat| 427 |children|
- 433 = 438 |#| 444)
+ |URAGG-;more?;ANniB;13| |URAGG-;size?;ANniB;14| (82 . =)
+ (88 . |cyclic?|) |URAGG-;#;ANni;15| |URAGG-;tail;2A;16|
+ (93 . |eq?|) (99 . |cycleEntry|) |URAGG-;cycleTail;2A;18|
+ |URAGG-;cycleEntry;2A;19| |URAGG-;cycleLength;ANni;20|
+ |URAGG-;rest;ANniA;21| (104 . |#|) (109 . >)
+ (115 . |rest|) (121 . |copy|) (126 . |last|)
+ (132 . |true|) (136 . ~=) (142 . =) (148 . =)
+ (154 . |node?|) (160 . |setfirst!|) (166 . |setelt|)
+ (173 . |setlast!|) (179 . |setelt|) (186 . |setrest!|)
+ (192 . |setelt|) (199 . |concat!|) (205 . |concat|)
+ (211 . |setlast!|) (217 . |#|) (222 . |first|)
+ (227 . |setchildren!|) (233 . |setvalue!|) (239 . <)
+ (245 . |empty|) (249 . |split!|) (255 . |cycleSplit!|)
+ '"value")
+ '#(|value| 260 |third| 265 |tail| 270 |split!| 275 |size?|
+ 281 |setvalue!| 287 |setlast!| 293 |setelt| 299
+ |setchildren!| 320 |second| 326 |rest| 331 |nodes| 337
+ |node?| 342 |more?| 348 |less?| 354 |leaf?| 360 |last| 365
+ |elt| 376 |cyclic?| 394 |cycleTail| 399 |cycleSplit!| 404
+ |cycleLength| 409 |cycleEntry| 414 |concat| 419 |children|
+ 425 = 430 |#| 436)
'NIL
(CONS (|makeByteWordVec2| 1 'NIL)
(CONS '#()
(CONS '#()
- (|makeByteWordVec2| 86
+ (|makeByteWordVec2| 83
'(1 6 7 0 8 1 6 7 0 11 1 6 0 0 14 1 6
19 0 20 0 19 0 21 1 19 0 0 22 1 6 0 0
24 0 26 0 27 2 26 0 6 0 28 1 26 0 0
29 0 35 0 36 0 37 0 38 2 37 19 0 0 39
0 35 0 40 0 37 0 41 2 37 0 0 0 42 1
- 37 19 0 44 0 47 0 48 2 35 19 0 0 49 1
- 6 19 0 50 2 6 19 0 0 53 1 6 0 0 54 0
- 47 0 56 1 6 35 0 60 2 35 19 0 0 61 2
- 6 0 0 35 62 1 6 0 0 63 2 0 0 0 35 64
- 0 19 0 65 2 7 19 0 0 66 2 0 19 0 0 67
- 2 6 19 0 0 68 2 0 19 0 0 69 2 6 7 0 7
- 70 3 0 7 0 9 7 71 2 6 7 0 7 72 3 0 7
- 0 12 7 73 2 6 0 0 0 74 3 0 0 0 15 0
- 75 2 6 0 0 0 76 2 0 0 0 0 77 2 0 7 0
- 7 78 1 26 35 0 79 1 26 6 0 80 2 0 0 0
- 30 81 2 0 7 0 7 82 2 37 19 0 0 83 0 6
- 0 84 2 0 0 0 37 85 1 0 0 0 86 1 0 7 0
- 34 1 0 7 0 18 1 0 0 0 52 2 0 0 0 37
- 85 2 0 19 0 35 46 2 0 7 0 7 82 2 0 7
- 0 7 78 3 0 7 0 12 7 73 3 0 0 0 15 0
- 75 3 0 7 0 9 7 71 2 0 0 0 30 81 1 0 7
- 0 17 2 0 0 0 35 59 1 0 30 0 31 2 0 19
- 0 0 69 2 0 19 0 35 45 2 0 19 0 35 43
- 1 0 19 0 33 2 0 0 0 35 64 1 0 7 0 25
- 2 0 7 0 12 13 2 0 0 0 15 16 2 0 7 0 9
- 10 1 0 19 0 23 1 0 0 0 55 1 0 0 0 86
- 1 0 35 0 58 1 0 0 0 57 2 0 0 0 0 77 1
- 0 30 0 32 2 0 19 0 0 67 1 0 35 0 51)))))
+ 37 19 0 44 2 35 19 0 0 47 1 6 19 0 48
+ 2 6 19 0 0 51 1 6 0 0 52 1 6 35 0 57
+ 2 35 19 0 0 58 2 6 0 0 35 59 1 6 0 0
+ 60 2 0 0 0 35 61 0 19 0 62 2 7 19 0 0
+ 63 2 0 19 0 0 64 2 6 19 0 0 65 2 0 19
+ 0 0 66 2 6 7 0 7 67 3 0 7 0 9 7 68 2
+ 6 7 0 7 69 3 0 7 0 12 7 70 2 6 0 0 0
+ 71 3 0 0 0 15 0 72 2 6 0 0 0 73 2 0 0
+ 0 0 74 2 0 7 0 7 75 1 26 35 0 76 1 26
+ 6 0 77 2 0 0 0 30 78 2 0 7 0 7 79 2
+ 37 19 0 0 80 0 6 0 81 2 0 0 0 37 82 1
+ 0 0 0 83 1 0 7 0 34 1 0 7 0 18 1 0 0
+ 0 50 2 0 0 0 37 82 2 0 19 0 35 46 2 0
+ 7 0 7 79 2 0 7 0 7 75 3 0 7 0 12 7 70
+ 3 0 0 0 15 0 72 3 0 7 0 9 7 68 2 0 0
+ 0 30 78 1 0 7 0 17 2 0 0 0 35 56 1 0
+ 30 0 31 2 0 19 0 0 66 2 0 19 0 35 45
+ 2 0 19 0 35 43 1 0 19 0 33 2 0 0 0 35
+ 61 1 0 7 0 25 2 0 7 0 12 13 2 0 0 0
+ 15 16 2 0 7 0 9 10 1 0 19 0 23 1 0 0
+ 0 53 1 0 0 0 83 1 0 35 0 55 1 0 0 0
+ 54 2 0 0 0 0 74 1 0 30 0 32 2 0 19 0
+ 0 64 1 0 35 0 49)))))
'|lookupComplete|))
diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot
index 36c75a74..a8f63b8a 100644
--- a/src/interp/compiler.boot
+++ b/src/interp/compiler.boot
@@ -2356,6 +2356,63 @@ compRepeatOrCollect(form,m,e) ==
listOrVectorElementMode x ==
x is [a,b,:.] and member(a,'(PrimitiveArray Vector List)) => b
+
+++ Return the least Integer subdomain that can represent values
+++ of both Integer subdomains denoted by the forms `x' and `y.
+joinIntegerModes(x,y,e) ==
+ isSubset(x,y,e) => y
+ isSubset(y,x,e) => x
+ $Integer
+
+++ Subroutine of compStepIterator.
+++ We are elaborating the STEP form of a for-iterator, where all
+++ bounds and increment are expected to be integer-valued expressions.
+++ Compile the expression `x' in the context `e', under those
+++ circumstances. When successful we return either the declared
+++ mode of the expression, or infer the tightest mode that can
+++ represents the resulting value. Note that we do not attempt any
+++ SmallInteger optimization at this stage. Such a transformation can
+++ be done only when we have all information about the bound.
+compIntegerValue(x,e) ==
+ -- 1. Preliminary transformation.
+ -- The literal values 0 and 1 get transformed by the parser
+ -- into calls Zero() and One(), respectively. Undo that transformation
+ -- locally. Note that this local transformation is OK, because
+ -- it presents semantics.
+ x :=
+ x = $Zero => 0
+ x = $One => 1
+ x
+ -- 2. Attempt to infer the type of the expression if at all possible.
+ -- The inferred mode is valid only if it is an integer (sub)domain.
+ T := comp(x,$EmptyMode,e)
+ isSubset(T.mode,$Integer,e) => T
+ -- 3. Otherwise, compile in checking mode.
+ comp(x,$PositiveInteger,e) or
+ comp(x,$NonNegativeInteger,e) or
+ compOrCroak(x,$Integer,e)
+
+++ Attempt to compile a `for' iterator of the form
+++ for index in start..final by inc
+++ where the bound `final' may be missing.
+compStepIterator(index,start,final,inc,e) ==
+ checkVariableName index
+ $formalArgList := [index,:$formalArgList]
+ [start,startMode,e] := compIntegerValue(start,e) or return
+ stackMessage('"start value of index: %1b must be an integer",[start])
+ [inc,incMode,e] := compIntegerValue(inc,e) or return
+ stackMessage('"index increment: %1b must be an integer",[inc])
+ if final ~= nil then
+ [final,finalMode,e] := compIntegerValue(first final,e) or return
+ stackMessage('"final value of index: %1b must be an integer",[final])
+ final := [final]
+ indexMode :=
+ final = nil or isSubset(incMode,$NonNegativeInteger,e) => startMode
+ joinIntegerModes(startMode,finalMode,e)
+ if get(index,"mode",e) = nil then
+ [.,.,e] := compMakeDeclaration(index,indexMode,e) or return nil
+ e:= put(index,"value",[genSomeVariable(),indexMode,$noEnv],e)
+ [["STEP",index,start,inc,:final],e]
compIterator(it,e) ==
-- ??? Allow for declared iterator variable.
@@ -2386,43 +2443,7 @@ compIterator(it,e) ==
[y'',m'',e] := coerce([y',m,e], mOver) or return nil
[["ON",x,y''],e]
it is ["STEP",index,start,inc,:optFinal] =>
- checkVariableName index
- $formalArgList:= [index,:$formalArgList]
- --if all start/inc/end compile as small integers, then loop
- --is compiled as a small integer loop
- final':= nil
- (start':= comp(start,$SmallInteger,e)) and
- (inc':= comp(inc,$NonNegativeInteger,start'.env)) and
- (not (optFinal is [final]) or
- (final':= comp(final,$SmallInteger,inc'.env))) =>
- indexmode:=
- comp(start,$NonNegativeInteger,e) =>
- $NonNegativeInteger
- $SmallInteger
- if null get(index,"mode",e) then [.,.,e]:=
- compMakeDeclaration(index,indexmode,
- (final' => final'.env; inc'.env)) or return nil
- e:= put(index,"value",[genSomeVariable(),indexmode,$noEnv],e)
- if final' then optFinal:= [final'.expr]
- [["ISTEP",index,start'.expr,inc'.expr,:optFinal],e]
- [start,.,e]:=
- comp(start,$Integer,e) or return
- stackMessage('"start value of index: %1b must be an integer",[start])
- [inc,.,e]:=
- comp(inc,$Integer,e) or return
- stackMessage('"index increment: %1b must be an integer",[inc])
- if optFinal is [final] then
- [final,.,e]:=
- comp(final,$Integer,e) or return
- stackMessage('"final value of index: %1b must be an integer",[final])
- optFinal:= [final]
- indexmode:=
- comp(third it,$NonNegativeInteger,e) => $NonNegativeInteger
- $Integer
- if null get(index,"mode",e) then [.,.,e]:=
- compMakeDeclaration(index,indexmode,e) or return nil
- e:= put(index,"value",[genSomeVariable(),indexmode,$noEnv],e)
- [["STEP",index,start,inc,:optFinal],e]
+ compStepIterator(index,start,optFinal,inc,e)
it is ["WHILE",p] =>
[p',m,e]:=
comp(p,$Boolean,e) or return