diff --git a/books/bookvol10.2.pamphlet b/books/bookvol10.2.pamphlet index 1b82f31..bcd70d9 100644 --- a/books/bookvol10.2.pamphlet +++ b/books/bookvol10.2.pamphlet @@ -76807,7 +76807,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|AbelianGroup&|)) (LETT |dv$| (LIST (QUOTE |AbelianGroup&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 22) . #1#) + (LETT |$| (make-array 22) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -76959,7 +76959,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|AbelianMonoid&|)) (LETT |dv$| (LIST (QUOTE |AbelianMonoid&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 19) . #1#) + (LETT |$| (make-array 19) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -77091,7 +77091,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|AbelianSemiGroup&|)) (LETT |dv$| (LIST (QUOTE |AbelianSemiGroup&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 11) . #1#) + (LETT |$| (make-array 11) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -77481,7 +77481,7 @@ Note that this code is not included in the generated catdef.spad file. (LETT |DV$1| (|devaluate| |#1|) . #1=(|Collection&|)) (LETT |DV$2| (|devaluate| |#2|) . #1#) (LETT |dv$| (LIST (QUOTE |Collection&|) |DV$1| |DV$2|) . #1#) - (LETT |$| (GETREFV 37) . #1#) + (LETT |$| (make-array 37) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| @@ -77682,7 +77682,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|DifferentialRing&|)) (LETT |dv$| (LIST (QUOTE |DifferentialRing&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 13) . #1#) + (LETT |$| (make-array 13) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -77809,7 +77809,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|DivisionRing&|)) (LETT |dv$| (LIST (QUOTE |DivisionRing&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 27) . #1#) + (LETT |$| (make-array 27) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -78645,7 +78645,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|ExpressionSpace&|)) (LETT |dv$| (LIST (QUOTE |ExpressionSpace&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 131) . #1#) + (LETT |$| (make-array 131) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| @@ -79340,7 +79340,7 @@ recompiling. (PROGN (LETT DV$1 (|devaluate| |#1|) . #0=(|EuclideanDomain&|)) (LETT |dv$| (LIST (QUOTE |EuclideanDomain&|) DV$1) . #0#) - (LETT $ (GETREFV 53) . #0#) + (LETT $ (make-array 53) . #0#) (QSETREFV $ 0 |dv$|) (QSETREFV $ 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#)) (|stuffDomainSlots| $) @@ -80014,7 +80014,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|FiniteFieldCategory&|)) (LETT |dv$| (LIST (QUOTE |FiniteFieldCategory&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 93) . #1#) + (LETT |$| (make-array 93) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -80188,7 +80188,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|FloatingPointSystem&|)) (LETT |dv$| (LIST (QUOTE |FloatingPointSystem&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 17) . #1#) + (LETT |$| (make-array 17) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| @@ -80494,7 +80494,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|GcdDomain&|)) (LETT |dv$| (LIST (QUOTE |GcdDomain&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 42) . #1#) + (LETT |$| (make-array 42) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -80868,7 +80868,7 @@ Note that this code is not included in the generated catdef.spad file. (LETT |DV$1| (|devaluate| |#1|) . #1=(|HomogeneousAggregate&|)) (LETT |DV$2| (|devaluate| |#2|) . #1#) (LETT |dv$| (LIST (QUOTE |HomogeneousAggregate&|) |DV$1| |DV$2|) . #1#) - (LETT |$| (GETREFV 38) . #1#) + (LETT |$| (make-array 38) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| @@ -81295,7 +81295,7 @@ This is eventually forcibly replaced by a recompiled version. (PROGN (LETT DV$1 (|devaluate| |#1|) . #0=(|IntegerNumberSystem&|)) (LETT |dv$| (LIST (QUOTE |IntegerNumberSystem&|) DV$1) . #0#) - (LETT $ (GETREFV 87) . #0#) + (LETT $ (make-array 87) . #0#) (QSETREFV $ 0 |dv$|) (QSETREFV $ 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#)) (|stuffDomainSlots| $) @@ -81525,7 +81525,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|IntegralDomain&|)) (LETT |dv$| (LIST (QUOTE |IntegralDomain&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 21) . #1#) + (LETT |$| (make-array 21) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -81714,7 +81714,7 @@ Note that this code is not included in the generated catdef.spad file. (LETT |DV$1| (|devaluate| |#1|) . #1=(|LinearAggregate&|)) (LETT |DV$2| (|devaluate| |#2|) . #1#) (LETT |dv$| (LIST (QUOTE |LinearAggregate&|) |DV$1| |DV$2|) . #1#) - (LETT |$| (GETREFV 25) . #1#) + (LETT |$| (make-array 25) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| @@ -82598,7 +82598,7 @@ Note that this code is not included in the generated catdef.spad file. (LETT |DV$1| (|devaluate| |#1|) . #1=(|ListAggregate&|)) (LETT |DV$2| (|devaluate| |#2|) . #1#) (LETT |dv$| (LIST (QUOTE |ListAggregate&|) |DV$1| |DV$2|) . #1#) - (LETT |$| (GETREFV 66) . #1#) + (LETT |$| (make-array 66) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -82752,7 +82752,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|Monoid&|)) (LETT |dv$| (LIST (QUOTE |Monoid&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 22) . #1#) + (LETT |$| (make-array 22) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -83018,7 +83018,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|OrderedRing&|)) (LETT |dv$| (LIST (QUOTE |OrderedRing&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 20) . #1#) + (LETT |$| (make-array 20) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -84122,7 +84122,7 @@ Note that this code is not included in the generated catdef.spad file. (CONS 0 (PRIMVEC2ARR (PROGN - (LETT #15# (GETREFV (SIZE |monslist|)) + (LETT #15# (make-array (SIZE |monslist|)) |POLYCAT-;conditionP;MU;27|) (SEQ (LETT #16# 0 |POLYCAT-;conditionP;MU;27|) @@ -84449,7 +84449,7 @@ Note that this code is not included in the generated catdef.spad file. (LETT DV$3 (|devaluate| |#3|) . #0#) (LETT DV$4 (|devaluate| |#4|) . #0#) (LETT |dv$| (LIST (QUOTE |PolynomialCategory&|) DV$1 DV$2 DV$3 DV$4) . #0#) - (LETT $ (GETREFV 226) . #0#) + (LETT $ (make-array 226) . #0#) (QSETREFV $ 0 |dv$|) (QSETREFV $ 3 (LETT |pv$| @@ -85568,7 +85568,7 @@ Note that this code is not included in the generated catdef.spad file. (LIST (QUOTE |PolynomialSetCategory&|) |DV$1| |DV$2| |DV$3| |DV$4| |DV$5|) . #1#) - (LETT |$| (GETREFV 90) . #1#) + (LETT |$| (make-array 90) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| @@ -86004,7 +86004,7 @@ Note that this code is not included in the generated catdef.spad file. (LETT |DV$1| (|devaluate| |#1|) . #1=(|QuotientFieldCategory&|)) (LETT |DV$2| (|devaluate| |#2|) . #1#) (LETT |dv$| (LIST (QUOTE |QuotientFieldCategory&|) |DV$1| |DV$2|) . #1#) - (LETT |$| (GETREFV 119) . #1#) + (LETT |$| (make-array 119) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| @@ -86266,7 +86266,7 @@ Note that this code is not included in the generated catdef.spad file. (LETT |DV$1| (|devaluate| |#1|) . #1=(|RecursiveAggregate&|)) (LETT |DV$2| (|devaluate| |#2|) . #1#) (LETT |dv$| (LIST (QUOTE |RecursiveAggregate&|) |DV$1| |DV$2|) . #1#) - (LETT |$| (GETREFV 19) . #1#) + (LETT |$| (make-array 19) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| @@ -86373,7 +86373,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|Ring&|)) (LETT |dv$| (LIST (QUOTE |Ring&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 12) . #1#) + (LETT |$| (make-array 12) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -86631,7 +86631,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|RealNumberSystem&|)) (LETT |dv$| (LIST (QUOTE |RealNumberSystem&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 52) . #1#) + (LETT |$| (make-array 52) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -86813,7 +86813,7 @@ Note that this code is not included in the generated catdef.spad file. (LETT |DV$1| (|devaluate| |#1|) . #1=(|SetAggregate&|)) (LETT |DV$2| (|devaluate| |#2|) . #1#) (LETT |dv$| (LIST (QUOTE |SetAggregate&|) |DV$1| |DV$2|) . #1#) - (LETT |$| (GETREFV 16) . #1#) + (LETT |$| (make-array 16) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -86934,7 +86934,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|SetCategory&|)) (LETT |dv$| (LIST (QUOTE |SetCategory&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 11) . #1#) + (LETT |$| (make-array 11) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -87284,7 +87284,7 @@ Note that this code is not included in the generated catdef.spad file. (LETT |DV$1| (|devaluate| |#1|) . #1=(|StreamAggregate&|)) (LETT |DV$2| (|devaluate| |#2|) . #1#) (LETT |dv$| (LIST (QUOTE |StreamAggregate&|) |DV$1| |DV$2|) . #1#) - (LETT |$| (GETREFV 51) . #1#) + (LETT |$| (make-array 51) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -88373,7 +88373,7 @@ Note that this code is not included in the generated catdef.spad file. (LETT DV$5 (|devaluate| |#5|) . #0#) (LETT |dv$| (LIST (QUOTE |TriangularSetCategory&|) DV$1 DV$2 DV$3 DV$4 DV$5) . #0#) - (LETT $ (GETREFV 131) . #0#) + (LETT $ (make-array 131) . #0#) (QSETREFV $ 0 |dv$|) (QSETREFV $ 3 (LETT |pv$| @@ -88615,7 +88615,7 @@ Note that this code is not included in the generated catdef.spad file. (PROGN (LETT |DV$1| (|devaluate| |#1|) . #1=(|UniqueFactorizationDomain&|)) (LETT |dv$| (LIST (QUOTE |UniqueFactorizationDomain&|) |DV$1|) . #1#) - (LETT |$| (GETREFV 24) . #1#) + (LETT |$| (make-array 24) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #1#)) (|stuffDomainSlots| |$|) @@ -89905,7 +89905,7 @@ Note that this code is not included in the generated catdef.spad file. (LETT |DV$2| (|devaluate| |#2|) . #1#) (LETT |dv$| (LIST (QUOTE |UnivariatePolynomialCategory&|) |DV$1| |DV$2|) . #1#) - (LETT |$| (GETREFV 201) . #1#) + (LETT |$| (make-array 201) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| @@ -90966,7 +90966,7 @@ Note that this code is not included in the generated catdef.spad file. (LETT |DV$1| (|devaluate| |#1|) . #1=(|UnaryRecursiveAggregate&|)) (LETT |DV$2| (|devaluate| |#2|) . #1#) (LETT |dv$| (LIST (QUOTE |UnaryRecursiveAggregate&|) |DV$1| |DV$2|) . #1#) - (LETT |$| (GETREFV 66) . #1#) + (LETT |$| (make-array 66) . #1#) (QSETREFV |$| 0 |dv$|) (QSETREFV |$| 3 (LETT |pv$| diff --git a/books/bookvol4.pamphlet b/books/bookvol4.pamphlet index ebd5476..87e67cc 100644 --- a/books/bookvol4.pamphlet +++ b/books/bookvol4.pamphlet @@ -4583,7 +4583,7 @@ code: (RETURN (PROGN (LETT |dv$| (QUOTE (|Any|)) . #0=(|Any|)) - (LETT $ (GETREFV 35) . #0#) + (LETT $ (make-array 35) . #0#) (QSETREFV $ 0 |dv$|) (QSETREFV $ 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#)) (|haddProp| |$ConstructorCache| (QUOTE |Any|) NIL (CONS 1 $)) diff --git a/books/bookvol5.pamphlet b/books/bookvol5.pamphlet index e6ef99f..7e34eb5 100644 --- a/books/bookvol5.pamphlet +++ b/books/bookvol5.pamphlet @@ -8629,7 +8629,8 @@ the original Macro pform. (setq ex (assoc (|pfIdSymbol| pform) replist :test #'eq)) (cond (ex - (rplpair pform (cdr ex)) + (rplaca pform (cadr ex)) + (rplacd pform (cddr ex)) pform) (t pform)))) @@ -19405,9 +19406,6 @@ current information is recorded. If there are more frame elements in the list then this will destructively move the current frame to the end of the list, that is, assume the frame list reads (1 2 3) this function will destructively change it to (2 3 1). -Note: the nconc2 function destructively inserts the second list at the -end of the first. -\calls{nextInterpreterFrame}{nconc2} \calls{nextInterpreterFrame}{updateFromCurrentInterpreterFrame} \usesdollar{nextInterpreterFrame}{interpreterFrameRing} \begin{chunk}{defun nextInterpreterFrame} @@ -19416,8 +19414,7 @@ end of the first. (declare (special |$interpreterFrameRing|)) (when (cdr |$interpreterFrameRing|) (setq |$interpreterFrameRing| - (nconc2 (cdr |$interpreterFrameRing|) - (list (car |$interpreterFrameRing|)))) + (nconc (cdr |$interpreterFrameRing|) (list (car |$interpreterFrameRing|)))) (|updateFromCurrentInterpreterFrame|))) \end{chunk} @@ -19443,7 +19440,6 @@ end of the first. \defunsec{previousInterpreterFrame} {Move to the previous Interpreter Frame in Ring} \calls{previousInterpreterFrame}{updateCurrentInterpreterFrame} -\calls{previousInterpreterFrame}{nconc2} \calls{previousInterpreterFrame}{updateFromCurrentInterpreterFrame} \usesdollar{previousInterpreterFrame}{interpreterFrameRing} \begin{chunk}{defun previousInterpreterFrame} @@ -19456,7 +19452,7 @@ end of the first. (setq tmp1 (reverse |$interpreterFrameRing|)) (setq l (car tmp1)) (setq b (nreverse (cdr tmp1))) - (setq |$interpreterFrameRing| (nconc2 (cons l nil) b)) + (setq |$interpreterFrameRing| (nconc (cons l nil) b)) (|updateFromCurrentInterpreterFrame|)))) \end{chunk} @@ -32442,14 +32438,17 @@ to convert the data into type "Expression" \end{chunk} \defun{remover}{remover} -\calls{remover}{rplnode} \calls{remover}{remover} \begin{chunk}{defun remover} (defun remover (lst item) (cond ((null (consp lst)) (cond ((equal lst item) nil) (t lst))) ((equal (car lst) item) (cdr lst)) - (t (rplnode lst (remover (car lst) item) (remover (cdr lst) item))))) + (t + (rplnode lst (remover (car lst) item) (remover (cdr lst) item)) + (rplaca lst (remover (car lst) item)) + (rplacd lst (remover (cdr lst) item)) + lst))) \end{chunk} @@ -38064,6 +38063,42 @@ but the Axiom semantics are not the same. Because Axiom was originally written in Maclisp, then VMLisp, and then Common Lisp some of these old semantics survive. +\section{U32Vector} +\defun{getrefv32}{getrefv32} +\begin{chunk}{defun getrefv32} +(defun getrefv32 (n x) + (make-array n :initial-element x :element-type '(unsigned-byte 32))) + +\end{chunk} + +\defmacro{qv32len} +\begin{chunk}{defmacro qv32len} +(defmacro qv32len (v) + `(length (the (simple-array (unsigned-byte 32) (*)) ,v))) + +\end{chunk} + +\defmacro{elt32} +\begin{chunk}{defmacro elt32} +(defmacro elt32 (v i) + `(aref (the (simple-array (unsigned-byte 32) (*)) ,v) ,i)) + +\end{chunk} + +\defmacro{setelt32} +\begin{chunk}{defmacro setelt32} +(defmacro setelt32 (v i s) + `(setf (aref (the (simple-array (unsigned-byte 32) (*)) ,v) ,i), s)) + +\end{chunk} + +\section{DirectProduct} +\defun{vec2list}{vec2list} +\begin{chunk}{defun vec2list} +(defun vec2list (vec) (coerce vec 'list)) + +\end{chunk} + \section{AlgebraicFunction} \defun{retract}{retract} \calls{retract}{objMode} @@ -39530,6 +39565,96 @@ See Steele Common Lisp 1990 pp305-307 \end{chunk} +\chapter{OpenMath stub functions} +\section{Lisp conversion functions} +The lisp conversion functions are: +\begin{itemize} +\item (toDev LispObject) $->$ OMdev +\item (fromDev OMdev) $->$ LispObject +\item (toStatus LispObject) $->$ LispObject +\item (fromStatus OMstatus) $->$ LispObject +\item (toEncodingType LispObject) $->$ OMencodingType +\item (fromEncodingType OMencodingType) $->$ LispObject +\item (toBigNumStr LispObject) $->$ char * +\item (fromBigNumStr(char *,int,int, OMbigIntType) $->$ LispObject +\item (toConn LispObject) $->$ OMconn +\item (fromConn OMconn) $->$ LispObject +\item (toCString LispObject) $->$ char ** +\item (fromCString char **) $->$ LispObject +\item (lispStringFromCString LispObject) $->$ LispObject +\item (cStringFromLispString LispObject) $->$ LispObject +\end{itemize} + +\section{Device manipulation functions} +\begin{itemize} +\item openFileDev(LispObject, ints, ...) $->$ LispObject +\item openStrDev(LispObject, LispObject, LispObject) $->$ LispObject +\item closeDev(LispObject, LispObject) $->$ LispObject +\end{itemize} + +\section{Connection manipulation functions} +\begin{itemize} +\item makeConn(LispObject, LispObject) $->$ LispObject +\item closeConn(LispObject, LispObject) $->$ LispObject +\item getConnInDev(LispObject, LispObject) $->$ LispObject +\item getConnOutDev(LispObject, LispObject) $->$ LispObject +\end{itemize} + +\section{Client/Server functions} +See OMconn.h +\begin{itemize} +\item connectTCP(LispObject, int, ...) $->$ LispObject +\item bindTCP(LispObject, LispObject, LispObject) $->$ LispObject +\end{itemize} + +\section{Device input/output functions} +\begin{itemize} +\item putApp(LispObject, LispObject) $->$ LispObject +\item putEndApp(LispObject, LispObject) $->$ LispObject +\item putAtp(LispObject, LispObject) $->$ LispObject +\item putEndAtp(LispObject, LispObject) $->$ LispObject +\item putAttr(LispObject, LispObject) $->$ LispObject +\item putEndAttr(LispObject, LispObject) $->$ LispObject +\item putBind(LispObject, LispObject) $->$ LispObject +\item putEndBind(LispObject, LispObject) $->$ LispObject +\item putBVar(LispObject, LispObject) $->$ LispObject +\item putEndBVar(LispObject, LispObject) $->$ LispObject +\item putError(LispObject, LispObject) $->$ LispObject +\item putEndError(LispObject, LispObject) $->$ LispObject +\item putObject(LispObject, LispObject) $->$ LispObject +\item putEndObject(LispObject, LispObject) $->$ LispObject +\item putInt(LispObject, LispObject, LispObject) $->$ LispObject +\item putFloat(LispObject, LispObject, LispObject) $->$ LispObject +\item putByteArray(LispObject, LispObject, LispObject) $->$ LispObject +\item putVar(LispObject, LispObject, LispObject) $->$ LispObject +\item putString(LispObject, LispObject, LispObject) $->$ LispObject +\item putSymbol(LispObject, LispObject, LispObject) $->$ LispObject +\item putSymbol2(LispObject, int nargs, ...) $->$ LispObject +\item getApp(LispObject, LispObject) $->$ LispObject +\item getEndApp(LispObject, LispObject) $->$ LispObject +\item getAtp(LispObject, LispObject) $->$ LispObject +\item getEndAtp(LispObject, LispObject) $->$ LispObject +\item getAttr(LispObject, LispObject) $->$ LispObject +\item getEndAttr(LispObject, LispObject) $->$ LispObject +\item getBind(LispObject, LispObject) $->$ LispObject +\item getEndBind(LispObject, LispObject) $->$ LispObject +\item getBVar(LispObject, LispObject) $->$ LispObject +\item getEndBVar(LispObject, LispObject) $->$ LispObject +\item getError(LispObject, LispObject) $->$ LispObject +\item getEndError(LispObject, LispObject) $->$ LispObject +\item getObject(LispObject, LispObject) $->$ LispObject +\item getEndObject(LispObject, LispObject) $->$ LispObject +\item getInt(LispObject, LispObject) $->$ LispObject +\item getFloat(LispObject, LispObject) $->$ LispObject +\item getByteArray(LispObject, LispObject) $->$ LispObject +\item getVar(LispObject, LispObject) $->$ LispObject +\item getString(LispObject, LispObject) $->$ LispObject +\item getSymbol(LispObject, LispObject) $->$ LispObject +\item getType(LispObject, LispObject) $->$ LispObject +\item stringToStringPtr(LispObject, LispObject) $->$ LispObject +\item stringPtrToString(LispObject, LispObject) $->$ LispObject +\end{itemize} + \chapter{NRLIB code.lisp support code} \defun{makeByteWordVec2}{makeByteWordVec2} @@ -40578,6 +40703,7 @@ This needs to work off the internal exposure list, not the file. \getchunk{defmacro dlen} \getchunk{defmacro dsetaref2} \getchunk{defmacro dsetelt} +\getchunk{defmacro elt32} \getchunk{defmacro funfind} \getchunk{defmacro hget} \getchunk{defmacro make-cdouble-matrix} @@ -40586,8 +40712,10 @@ This needs to work off the internal exposure list, not the file. \getchunk{defmacro make-double-matrix1} \getchunk{defmacro make-double-vector} \getchunk{defmacro make-double-vector1} +\getchunk{defmacro qv32len} \getchunk{defmacro Rest} \getchunk{defmacro startsId?} +\getchunk{defmacro setelt32} \getchunk{defmacro trapNumericErrors} \getchunk{defmacro truth-to-bit} \getchunk{defmacro while} @@ -41064,6 +41192,7 @@ This needs to work off the internal exposure list, not the file. \getchunk{defun getPosStL} \getchunk{defun getPreviousMapSubNames} \getchunk{defun getProplist} +\getchunk{defun getrefv32} \getchunk{defun getStFromMsg} \getchunk{defun getSystemCommandLine} \getchunk{defun getTraceOption} @@ -41957,6 +42086,7 @@ This needs to work off the internal exposure list, not the file. \getchunk{defun userLevelErrorMessage} \getchunk{defun validateOutputDirectory} +\getchunk{defun vec2list} \getchunk{defun what} \getchunk{defun whatCommands} diff --git a/books/bookvol9.pamphlet b/books/bookvol9.pamphlet index c5af8fd..87601f9 100644 --- a/books/bookvol9.pamphlet +++ b/books/bookvol9.pamphlet @@ -921,7 +921,7 @@ each of which we will explain in detail below. (PROGN (LETT DV$1 (|devaluate| |#1|) |Equation|) (LETT |dv$| (LIST '|Equation| DV$1) |Equation|) - (LETT $ (GETREFV 98) |Equation|) + (LETT $ (make-array 98) |Equation|) (QSETREFV $ 0 |dv$|) (QSETREFV $ 3 (LETT |pv$| @@ -1598,7 +1598,7 @@ By default, Axiom uses Gnu Common Lisp (GCL), which generates ``.o'' files. BOOT::|dispatchFunction| BOOT::|testBitVector| COND BOOT::|Record0| BOOT::|Record| BOOT::|stuffDomainSlots| CONS BOOT::|haddProp| BOOT::|HasCategory| BOOT::|buildPredVector| - SYSTEM:SVSET SETF VMLISP:QSETREFV VMLISP:GETREFV LIST + SYSTEM:SVSET SETF VMLISP:QSETREFV LIST BOOT::|devaluate| BOOT::LETT RETURN) RETURN-TYPE NIL ARG-TYPES (T) NO-EMIT NIL MACROS (BOOT::|dispatchFunction| COND BOOT::|Record| SETF diff --git a/changelog b/changelog index e62b0b5..2775e1c 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,14 @@ +20111106 tpd src/axiom-website/patches.html 20111106.01.tpd.patch +20111106 tpd src/interp/vmlisp.lisp missing/unused function cleanup +20111106 tpd src/interp/sys-pkg.lisp missing/unused function cleanup +20111106 tpd src/interp/interp-proclaims.lisp missing/unused function cleanup +20111106 tpd src/interp/g-util.lisp missing/unused function cleanup +20111106 tpd src/interp/functor.lisp missing/unused function cleanup +20111106 tpd src/interp/c-util.lisp missing/unused function cleanup +20111106 tpd books/bookvol9 missing/unused function cleanup +20111106 tpd books/bookvol5 missing/unused function cleanup +20111106 tpd books/bookvol4 missing/unused function cleanup +20111106 tpd books/bookvol10.2 missing/unused function cleanup 20111105 tpd src/axiom-website/patches.html 20111105.01.tpd.patch 20111105 tpd src/interp/vmlisp.lisp remove makeprop 20111105 tpd src/interp/sys-pkg.lisp remove makeprop diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html index 5a8cf9f..c7714a9 100644 --- a/src/axiom-website/patches.html +++ b/src/axiom-website/patches.html @@ -3662,5 +3662,7 @@ books/bookvol5 treeshake interpreter
books/bookvol9 treeshake compiler
20111105.01.tpd.patch src/interp/vmlisp.lisp remove makeprop
+20111106.01.tpd.patch +src/interp/vmlisp.lisp missing/unused function cleanup
diff --git a/src/interp/c-util.lisp.pamphlet b/src/interp/c-util.lisp.pamphlet index 8ba2c0f..0fd71f1 100644 --- a/src/interp/c-util.lisp.pamphlet +++ b/src/interp/c-util.lisp.pamphlet @@ -1884,13 +1884,14 @@ ;;; *** |unStackWarning| REDEFINED -(DEFUN |unStackWarning| (|msg|) +(defun |unStackWarning| (|msg|) (declare (special |$warningStack| |$op| |$insideCapsuleFunctionIfTrue|)) (PROGN (COND (|$insideCapsuleFunctionIfTrue| (SPADLET |msg| (CONS |$op| (CONS '|: | |msg|))))) - (SPADLET |$warningStack| (EFFACE |msg| |$warningStack|)) + (SPADLET |$warningStack| + (delete |msg| |$warningStack| :count 1 :test #'equal)) NIL)) ; diff --git a/src/interp/functor.lisp.pamphlet b/src/interp/functor.lisp.pamphlet index 7ba72d3..638bca1 100644 --- a/src/interp/functor.lisp.pamphlet +++ b/src/interp/functor.lisp.pamphlet @@ -875,7 +875,8 @@ (|optFunctorBody,CondClause| |u|) G166526)))))))))) - (SPADLET |l| (EFFACE '('T) |l|)) + (SPADLET |l| + (delete '('T) |l| :count 1 :test #'equal)) (COND ((NULL |l|) NIL) ((BOOT-EQUAL (CAAR |l|) ''T) @@ -3796,25 +3797,22 @@ (|InvestigateConditions,Conds| |$principal| NIL)) (SPADLET |$Conditions| - (EFFACE NIL - (PROG (G168392) - (SPADLET G168392 NIL) - (RETURN - (DO - ((G168397 |$Conditions| - (CDR G168397)) - (|u| NIL)) - ((OR (ATOM G168397) - (PROGN - (SETQ |u| - (CAR G168397)) - NIL)) - (NREVERSE0 G168392)) - (SEQ - (EXIT - (SETQ G168392 - (CONS (EFFACE NIL |u|) - G168392))))))))) + (delete NIL + (PROG (G168392) + (SPADLET G168392 NIL) + (RETURN + (DO + ((G168397 |$Conditions| (CDR G168397)) + (|u| NIL)) + ((OR (ATOM G168397) + (PROGN + (SETQ |u| (CAR G168397)) NIL)) + (NREVERSE0 G168392)) + (SEQ + (EXIT + (SETQ G168392 + (CONS (delete NIL |u| :count 1 :test #'equal) + G168392))))))) :count 1 :test #'equal)) (SPADLET |partList| (PROG (G168407) (SPADLET G168407 NIL) diff --git a/src/interp/g-util.lisp.pamphlet b/src/interp/g-util.lisp.pamphlet index 3502bd8..71c4655 100644 --- a/src/interp/g-util.lisp.pamphlet +++ b/src/interp/g-util.lisp.pamphlet @@ -489,15 +489,16 @@ ; RPLNODE(t,removeZeroOneDestructively first t, ; removeZeroOneDestructively rest t) -(DEFUN |removeZeroOneDestructively| (|t|) - (DECLARE (SPECIAL |$One| |$Zero|)) - (COND - ((BOOT-EQUAL |t| |$Zero|) 0) - ((BOOT-EQUAL |t| |$One|) 1) - ((ATOM |t|) |t|) - ('T - (RPLNODE |t| (|removeZeroOneDestructively| (CAR |t|)) - (|removeZeroOneDestructively| (CDR |t|)))))) +(defun |removeZeroOneDestructively| (tt) + (declare (special |$One| |$Zero|)) + (cond + ((equal tt |$Zero|) 0) + ((equal tt |$One|) 1) + ((atom tt) tt) + (t + (rplaca tt (|removeZeroOneDestructively| (car tt))) + (rplacd tt (|removeZeroOneDestructively| (cdr tt))) + tt))) ;flattenSexpr s == ; null s => s diff --git a/src/interp/interp-proclaims.lisp b/src/interp/interp-proclaims.lisp index a66af84..c0b9294 100644 --- a/src/interp/interp-proclaims.lisp +++ b/src/interp/interp-proclaims.lisp @@ -214,7 +214,7 @@ BOOT::|Un2E| BOOT::|SUP2Up| BOOT::OV2OV BOOT::|insertAlist,fn| BOOT::|replaceVars| BOOT::|compFromIf| BOOT::|Scr2Scr| BOOT::|compBoolean| - BOOT::|L2Record| BOOT::|Rm2V| VMLISP:RPLNODE + BOOT::|L2Record| BOOT::|Rm2V| BOOT::|domain2NDmp| BOOT::|Up2Up| BOOT::|augLisplibModemapsFromCategory| BOOT::|P2Mp| BOOT::|compWithMappingMode,FreeList| BOOT::|orderPredTran| @@ -638,7 +638,7 @@ BOOT::|putMapCode|)) (PROCLAIM '(FTYPE (FUNCTION (T T *) T) BOOT::|pfLeaf| BOOT::BPITRACE - VMLISP:|remove| VMLISP:RREAD VMLISP:REMOVEQ + VMLISP:|remove| VMLISP:RREAD BOOT::MATCH-LISP-TAG VMLISP:NREMOVE VMLISP:NREMOVEQ BOOT::|tokConstruct| BOOT::|pfAdd| BOOT:|ByteFileReadLineIntoString| BOOT:MATCH-TOKEN)) @@ -2843,7 +2843,7 @@ BOOT::|throwKeyedMsg| BOOT::|canCoerceExplicit2Mapping| BOOT::|term1RWall| BOOT::|absolutelyCannotCoerce| BOOT::|rassocSub| BOOT::|coerceOrConvertOrRetract| - VMLISP:NCONC2 BOOT::|term1RW| BOOT::|coerceOrRetract| + BOOT::|term1RW| BOOT::|coerceOrRetract| BOOT::|resolveTMTaggedUnion| BOOT::|canCoerceUnion| BOOT::|acceptableTypesToResolve1| BOOT::|canCoercePermute| BOOT::|computeTTTranspositions| BOOT::|resolveTM2| @@ -2876,10 +2876,10 @@ BOOT::|replaceLast| BOOT::|coerceIntTest| VMLISP:ADDOPTIONS BOOT::|isSubTowerOf| BOOT::|starstarcond| BOOT::|equalOne| VMLISP:|assoc| VMLISP:SETSIZE BOOT::|evalSharpOne| - VMLISP:EFFACE BOOT::|canCoerceCommute| + BOOT::|canCoerceCommute| BOOT::|clearDependentMaps| BOOT::|constantInDomain?| VMLISP:EMBED BOOT::|translateMpVars2PVars| - VMLISP:LEXGREATERP VMLISP:RPLPAIR + VMLISP:LEXGREATERP BOOT::|addDmpLikeTermsAsTarget| VMLISP:HPUT* BOOT::|genMpFromDmpTerm| VMLISP:STRING2ID-N BOOT::|htMakeTemplates,substLabel| BOOT::|doDoitButton| diff --git a/src/interp/sys-pkg.lisp.pamphlet b/src/interp/sys-pkg.lisp.pamphlet index 6946d72..28c665e 100644 --- a/src/interp/sys-pkg.lisp.pamphlet +++ b/src/interp/sys-pkg.lisp.pamphlet @@ -352,16 +352,16 @@ provides support for compiler code. VMLISP::TRIMSTRING VMLISP::CURRINDEX VMLISP::EVALANDFILEACTQ VMLISP::LISPLIB VMLISP::FLUID VMLISP::MDEFX VMLISP::COMP370 VMLISP::NEQ VMLISP::GETREFV VMLISP::|log| VMLISP::QVSIZE - VMLISP::MBPIP VMLISP::RPLNODE VMLISP::QSORT + VMLISP::MBPIP VMLISP::QSORT VMLISP::PLACEP VMLISP::RREAD VMLISP::BINTP VMLISP::QSODDP VMLISP::O VMLISP::RVECP VMLISP::CHAR2NUM VMLISP::POPP VMLISP::QCDAADR VMLISP::HKEYS VMLISP::HASHCVEC VMLISP::HASHID - VMLISP::REMOVEQ VMLISP::LISTOFFUNCTIONS + VMLISP::LISTOFFUNCTIONS VMLISP::QCADAAR VMLISP::ABSVAL VMLISP::VMPRINT VMLISP::MAKE-APPENDSTREAM VMLISP::MAKE-INSTREAM VMLISP::HASHTABLEP VMLISP::UPCASE VMLISP::LOADCOND VMLISP::STRPOSL VMLISP::STATEP VMLISP::QCDADR - VMLISP::HREMPROP VMLISP::LAM VMLISP::FBPIP VMLISP::NCONC2 + VMLISP::HREMPROP VMLISP::LAM VMLISP::FBPIP VMLISP::GETFULLSTR VMLISP::I VMLISP::HREM VMLISP::*LISP-BIN-FILETYPE* VMLISP::INT2RNUM VMLISP::EBCDIC VMLISP::$INFILEP VMLISP::BFP VMLISP::NUMP VMLISP::UNEMBED @@ -384,14 +384,14 @@ provides support for compiler code. VMLISP::PROPLIST VMLISP::INTP VMLISP::OUTPUT VMLISP::CONSOLE VMLISP::QCDDDAR VMLISP::ADDOPTIONS VMLISP::$FILETYPE-TABLE VMLISP::QSMINUSP VMLISP::|assoc| VMLISP::SETSIZE VMLISP::QCDR - VMLISP::EFFACE VMLISP::COPY VMLISP::DOWNCASE VMLISP::LC2UC + VMLISP::COPY VMLISP::DOWNCASE VMLISP::LC2UC VMLISP::EMBED VMLISP::SETANDFILEQ VMLISP::QSMAX VMLISP::LIST2REFVEC VMLISP::MACRO-INVALIDARGS VMLISP::EMBEDDED VMLISP::REFVECP VMLISP::CLOSEDFN VMLISP::MAKE-HASHTABLE VMLISP::MAKE-FILENAME VMLISP::|$defaultMsgDatabaseName| VMLISP::LEXGREATERP VMLISP::IDENTP VMLISP::QSINC1 VMLISP::QESET VMLISP::MRP - VMLISP::LESSP VMLISP::RPLPAIR VMLISP::QVELT VMLISP::QRPLQ + VMLISP::LESSP VMLISP::QVELT VMLISP::QRPLQ VMLISP::MACERR VMLISP::*FILEACTQ-APPLY* VMLISP::HPUT* VMLISP::$FILEP VMLISP::MAKE-FULL-CVEC VMLISP::HCLEAR VMLISP::ERRORINSTREAM VMLISP::HPUTPROP @@ -712,7 +712,6 @@ provides support for compiler code. (lisp:import '(vmlisp::shut)) (lisp:import '(vmlisp::prin2cvec)) (lisp:import '(vmlisp::ncons)) -(lisp:import '(vmlisp::rplpair)) (lisp:import '(vmlisp::nump)) (lisp:import '(vmlisp::intp)) (lisp:import '(vmlisp::ifcar)) diff --git a/src/interp/vmlisp.lisp.pamphlet b/src/interp/vmlisp.lisp.pamphlet index 9bee962..8c7cf53 100644 --- a/src/interp/vmlisp.lisp.pamphlet +++ b/src/interp/vmlisp.lisp.pamphlet @@ -592,36 +592,17 @@ documentclass{article} ; 13.3 Updating -(defun RPLPAIR (pair1 pair2) - (RPLACA pair1 (CAR pair2)) - (RPLACD pair1 (CDR pair2)) pair1) - -(defun RPLNODE (pair1 ca2 cd2) - (RPLACA pair1 ca2) - (RPLACD pair1 cd2) pair1) - ; 14.0 Operations on Lists ; 14.1 Creation -(defun VEC2LIST (vec) (coerce vec 'list)) - (defun |remove| (list item &optional (count 1)) (if (integerp count) (remove item list :count count :test #'equalp) (remove item list :test #'equalp))) -(defun REMOVEQ (list item &optional (count 1)) - (if (integerp count) - (remove item list :count count :test #'eq) - (remove item list :test #'eq))) - -; 14.2 Accessing - (defun |last| (x) (car (lastpair x))) -; 14.3 Searching - (DEFUN |assoc| (X Y) "Return the pair associated with key X in association list Y." ; ignores non-nil list terminators @@ -661,8 +642,6 @@ documentclass{article} (defun EFFACE (item list) (delete item list :count 1 :test #'equal)) -(defun NCONC2 (x y) (NCONC x y)) ;NCONC with exactly two arguments - ; 14.6 Miscellaneous (defun QSORT (l)