This patch contains misc cleanup, misc fix, doc fix, typo fix,
I think it doesn't make sense to commit separately, so here it is.
- Qian
diff --git a/INSTALL.CYGWIN b/INSTALL.CYGWIN
index c4dbb7cb..88378f9f 100644
--- a/INSTALL.CYGWIN
+++ b/INSTALL.CYGWIN
@@ -48,7 +48,7 @@ II) Start Cygwin's setup program. The first few
questions can be answered with
1) Install a Common Lisp implementation
- Clisp is in the Cygwin repo, it but can not build FriCAS due to the
+ Clisp is in the Cygwin repo, but it can not build FriCAS due to the
"cygwin-no-save-executable.patch". So we compile ecl from source
here.
Install libgc1 libgc-devel libgmp-devel libffi-devel libatomic_ops1
diff --git a/src/algebra/elemntry.spad b/src/algebra/elemntry.spad
index 81a59af5..407bbe0d 100644
--- a/src/algebra/elemntry.spad
+++ b/src/algebra/elemntry.spad
@@ -202,8 +202,7 @@ ElementaryFunction(R, F) : Exports == Implementation
where
opasech := operator('asech)$CommonOperators
opacsch := operator('acsch)$CommonOperators
- -- Pi is a domain...
- Pie, isqrt1, isqrt2, isqrt3 : F
+ isqrt1, isqrt2, isqrt3 : F
-- following code is conditionalized on arbitraryPrecision to
recompute in
-- case user changes the precision
@@ -212,11 +211,11 @@ ElementaryFunction(R, F) : Exports ==
Implementation where
if R has arbitraryPrecision then
pi() == pi()$R :: F
else
- Pie := pi()$R :: F
- pi() == Pie
+ cachedPi : F := pi()$R :: F
+ pi() == cachedPi
else
- Pie := kernel(oppi, []$List(F))
- pi() == Pie
+ cachedPi : F := kernel(oppi, []$List(F))
+ pi() == cachedPi
if R has imaginary : () -> R then
isqrt1 := imaginary()$R :: F
diff --git a/src/algebra/ffact.spad b/src/algebra/ffact.spad
index c9583bb6..154a4c06 100644
--- a/src/algebra/ffact.spad
+++ b/src/algebra/ffact.spad
@@ -70,7 +70,7 @@ ModularFactorizationOperations(PA : Type, MMT : Type,
MD : Type,
++ modular composition matrix mat into two matrices,
++ first modulo pmod1, second modulo pmod2. To save
++ space first result replaces first nr1 rows of mat,
- ++ second result is stored in next nr1 rows of mat.
+ ++ second result is stored in next nr2 rows of mat.
++ nr0 is number of rows used in argument.
shift_mat! : (MMT, Integer, Integer) -> Void
++ shift_mat!(mat, sa, nr) moves modular composition
diff --git a/src/algebra/limitps.spad b/src/algebra/limitps.spad
index 1d5f751d..8ca9e5dd 100644
--- a/src/algebra/limitps.spad
+++ b/src/algebra/limitps.spad
@@ -745,7 +745,7 @@ ElementaryFunctionSign(R, F) : Exports ==
Implementation where
--abort if there are any variables
not empty? variables f => "failed"
-- abort in the presence of algebraic numbers
- member?(coerce("rootOf")::Symbol,map(name,operators
f)$ListFunctions2(BasicOperator,Symbol)) => "failed"
+ any?((x : BasicOperator) : Boolean +-> is?(x, 'rootOf), operators
f) => "failed"
-- In the last resort try interval evaluation where feasible.
if R has ConvertibleTo Float then
import from Interval(Float)
diff --git a/src/algebra/manip.spad b/src/algebra/manip.spad
index aa25a279..68f5422f 100644
--- a/src/algebra/manip.spad
+++ b/src/algebra/manip.spad
@@ -85,7 +85,7 @@ PolynomialRoots(E, V, R, P, F) : Exports ==
Implementation where
s := nthRoot(squareFree x, n)
[s.exponent, s.coef, */s.radicand]
- -- returns [d, b] suchj that d divides n and b^(n/d) = x
+ -- returns [d, b] such that d divides n and b^(n/d) = x
-- with d as small as possible
iroot(x : Z, n : N) : Record(exponent : N, coef : Z) ==
x = 1 => [1, 1]
diff --git a/src/interp/server.boot b/src/interp/server.boot
index 7bb511e3..9b54b785 100644
--- a/src/interp/server.boot
+++ b/src/interp/server.boot
@@ -133,7 +133,7 @@ parseAndInterpret str ==
executeQuietCommand() ==
$QuietCommand: fluid := true
- sockGetStringFrom($MenuServer)
+ stringBuf := sockGetStringFrom($MenuServer)
CATCH('coerceFailure, CATCH('top_level, CATCH('SPAD_READER,
parseAndInterpret stringBuf)))
diff --git a/src/interp/spad.lisp b/src/interp/spad.lisp
index abf79386..b6c7bfaa 100644
--- a/src/interp/spad.lisp
+++ b/src/interp/spad.lisp
@@ -107,6 +107,4 @@
(defun |hashable| (dom)
(memq (|knownEqualPred| dom)
- #-Lucid '(EQ EQL EQUAL)
- #+Lucid '(EQ EQL EQUAL EQUALP)
- ))
+ '(EQ EQL EQUAL)))
diff --git a/src/interp/util.lisp b/src/interp/util.lisp
index 400a2b94..9de141aa 100644
--- a/src/interp/util.lisp
+++ b/src/interp/util.lisp
@@ -47,8 +47,6 @@ at load time.
;;; on the system we are using.
(defvar |$lisp_bin_filetype|
#+:GCL "o"
- #+lucid "bbin"
- #+symbolics "bin"
#+:cmu (c:backend-fasl-file-type c:*target-backend*)
#+:sbcl "fasl"
#+:clisp "fas"
diff --git a/src/lisp/fricas-lisp.lisp b/src/lisp/fricas-lisp.lisp
index 678c105c..ce8d6bdc 100644
--- a/src/lisp/fricas-lisp.lisp
+++ b/src/lisp/fricas-lisp.lisp
@@ -99,10 +99,6 @@ with this hack and will try to convince the GCL crowd
to fix this.
(if restart
(excl::dumplisp :name core-image :restart-function restart)
(excl::dumplisp :name core-image))
-#+Lucid
- (if restart
- (sys::disksave core-image :restart-function restart)
- (sys::disksave core-image))
#+:cmu
(let* ((restart-fun
(if restart
--
You received this message because you are subscribed to the Google Groups "FriCAS -
computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/fricas-devel/7d3cfe5a-3409-4661-8e0f-3787615d1aab%40gmail.com.
diff --git a/INSTALL.CYGWIN b/INSTALL.CYGWIN
index c4dbb7cb..88378f9f 100644
--- a/INSTALL.CYGWIN
+++ b/INSTALL.CYGWIN
@@ -48,7 +48,7 @@ II) Start Cygwin's setup program. The first few questions can be answered with
1) Install a Common Lisp implementation
- Clisp is in the Cygwin repo, it but can not build FriCAS due to the
+ Clisp is in the Cygwin repo, but it can not build FriCAS due to the
"cygwin-no-save-executable.patch". So we compile ecl from source here.
Install libgc1 libgc-devel libgmp-devel libffi-devel libatomic_ops1
diff --git a/src/algebra/elemntry.spad b/src/algebra/elemntry.spad
index 81a59af5..407bbe0d 100644
--- a/src/algebra/elemntry.spad
+++ b/src/algebra/elemntry.spad
@@ -202,8 +202,7 @@ ElementaryFunction(R, F) : Exports == Implementation where
opasech := operator('asech)$CommonOperators
opacsch := operator('acsch)$CommonOperators
- -- Pi is a domain...
- Pie, isqrt1, isqrt2, isqrt3 : F
+ isqrt1, isqrt2, isqrt3 : F
-- following code is conditionalized on arbitraryPrecision to recompute in
-- case user changes the precision
@@ -212,11 +211,11 @@ ElementaryFunction(R, F) : Exports == Implementation where
if R has arbitraryPrecision then
pi() == pi()$R :: F
else
- Pie := pi()$R :: F
- pi() == Pie
+ cachedPi : F := pi()$R :: F
+ pi() == cachedPi
else
- Pie := kernel(oppi, []$List(F))
- pi() == Pie
+ cachedPi : F := kernel(oppi, []$List(F))
+ pi() == cachedPi
if R has imaginary : () -> R then
isqrt1 := imaginary()$R :: F
diff --git a/src/algebra/ffact.spad b/src/algebra/ffact.spad
index c9583bb6..154a4c06 100644
--- a/src/algebra/ffact.spad
+++ b/src/algebra/ffact.spad
@@ -70,7 +70,7 @@ ModularFactorizationOperations(PA : Type, MMT : Type, MD : Type,
++ modular composition matrix mat into two matrices,
++ first modulo pmod1, second modulo pmod2. To save
++ space first result replaces first nr1 rows of mat,
- ++ second result is stored in next nr1 rows of mat.
+ ++ second result is stored in next nr2 rows of mat.
++ nr0 is number of rows used in argument.
shift_mat! : (MMT, Integer, Integer) -> Void
++ shift_mat!(mat, sa, nr) moves modular composition
diff --git a/src/algebra/limitps.spad b/src/algebra/limitps.spad
index 1d5f751d..8ca9e5dd 100644
--- a/src/algebra/limitps.spad
+++ b/src/algebra/limitps.spad
@@ -745,7 +745,7 @@ ElementaryFunctionSign(R, F) : Exports == Implementation where
--abort if there are any variables
not empty? variables f => "failed"
-- abort in the presence of algebraic numbers
- member?(coerce("rootOf")::Symbol,map(name,operators f)$ListFunctions2(BasicOperator,Symbol)) => "failed"
+ any?((x : BasicOperator) : Boolean +-> is?(x, 'rootOf), operators f) => "failed"
-- In the last resort try interval evaluation where feasible.
if R has ConvertibleTo Float then
import from Interval(Float)
diff --git a/src/algebra/manip.spad b/src/algebra/manip.spad
index aa25a279..68f5422f 100644
--- a/src/algebra/manip.spad
+++ b/src/algebra/manip.spad
@@ -85,7 +85,7 @@ PolynomialRoots(E, V, R, P, F) : Exports == Implementation where
s := nthRoot(squareFree x, n)
[s.exponent, s.coef, */s.radicand]
- -- returns [d, b] suchj that d divides n and b^(n/d) = x
+ -- returns [d, b] such that d divides n and b^(n/d) = x
-- with d as small as possible
iroot(x : Z, n : N) : Record(exponent : N, coef : Z) ==
x = 1 => [1, 1]
diff --git a/src/interp/server.boot b/src/interp/server.boot
index 7bb511e3..9b54b785 100644
--- a/src/interp/server.boot
+++ b/src/interp/server.boot
@@ -133,7 +133,7 @@ parseAndInterpret str ==
executeQuietCommand() ==
$QuietCommand: fluid := true
- sockGetStringFrom($MenuServer)
+ stringBuf := sockGetStringFrom($MenuServer)
CATCH('coerceFailure, CATCH('top_level, CATCH('SPAD_READER,
parseAndInterpret stringBuf)))
diff --git a/src/interp/spad.lisp b/src/interp/spad.lisp
index abf79386..b6c7bfaa 100644
--- a/src/interp/spad.lisp
+++ b/src/interp/spad.lisp
@@ -107,6 +107,4 @@
(defun |hashable| (dom)
(memq (|knownEqualPred| dom)
- #-Lucid '(EQ EQL EQUAL)
- #+Lucid '(EQ EQL EQUAL EQUALP)
- ))
+ '(EQ EQL EQUAL)))
diff --git a/src/interp/util.lisp b/src/interp/util.lisp
index 400a2b94..9de141aa 100644
--- a/src/interp/util.lisp
+++ b/src/interp/util.lisp
@@ -47,8 +47,6 @@ at load time.
;;; on the system we are using.
(defvar |$lisp_bin_filetype|
#+:GCL "o"
- #+lucid "bbin"
- #+symbolics "bin"
#+:cmu (c:backend-fasl-file-type c:*target-backend*)
#+:sbcl "fasl"
#+:clisp "fas"
diff --git a/src/lisp/fricas-lisp.lisp b/src/lisp/fricas-lisp.lisp
index 678c105c..ce8d6bdc 100644
--- a/src/lisp/fricas-lisp.lisp
+++ b/src/lisp/fricas-lisp.lisp
@@ -99,10 +99,6 @@ with this hack and will try to convince the GCL crowd to fix this.
(if restart
(excl::dumplisp :name core-image :restart-function restart)
(excl::dumplisp :name core-image))
-#+Lucid
- (if restart
- (sys::disksave core-image :restart-function restart)
- (sys::disksave core-image))
#+:cmu
(let* ((restart-fun
(if restart