aboutsummaryrefslogtreecommitdiff
path: root/src/interp/nrungo.boot
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2008-09-01 16:23:42 +0000
committerdos-reis <gdr@axiomatics.org>2008-09-01 16:23:42 +0000
commit00796f7b8bc97b964a01d647487214579f91775a (patch)
treea8ff76fd793331b7810dc0bbcdba472680c51697 /src/interp/nrungo.boot
parent25f1c7c591229dcd84d651542e33a24fc13f837c (diff)
downloadopen-axiom-00796f7b8bc97b964a01d647487214579f91775a.tar.gz
2008-09-01 Martin Rubey <martin.rubey@univie.ac.at>
Gabriel Dos Reis <gdr@cs.tamu.edu> Fix AW/431 * algebra/ore.spad.pamphlet (SpareUnivariateSkewPolynomial): Implement **. 2008-09-01 Gabriel Dos Reis <gdr@cs.tamu.edu> Make ^ an alias for **. * interp/postpar.boot (postAtom): Replace "^" with "**". * interp/format.boot (reportOpSymbol): Announce that "^" is an alias for "**". * interp/nrungo.boot (compiledLookup): Be sure to look for "**" when operation is "^". * interp/define.boot (noteCapsuleFunctionDefinition): New. (clearCapsuleFunctionTable): Likewise. (noteExport): Likewise. (clearExportsTable): Likewise. (compDefineCapsuleFunction): Rename "^" to "**". Take a note of the capsule function being compiled. (compCapsule): Clear previous capsule functions table. (doItIf): Keep track of predicate validity. (compCategory): Clear previous exports table. (compCategoryItem): Take notes of declared attributes and signatures. * algebra/catdef.spad.pamphlet (DivisionRing): Remove duplicate definition for "^". (Group): Likewise. (Monoid): Likewise. (SemiGroup): Likewise. * algebra/poly.spad.pamphlet (PolynomialRing): Remove duplicate definitins of "^". (SparseUnivariatePolynomial): Likewise. * algebra/multpoly.spad.pamphlet (SparseMultivariatePolynomial): Remove duplicate definitions for "^". * algebra/interval.spad.pamphlet (Interval): Remove duplicate definition for "^". * algebra/curve.spad.pamphlet (FunctionFieldCategory): Remove duplicate declaration for represents. * algebra/strap/: Update cached Lisp translations. * share/algebra: Update databases.
Diffstat (limited to 'src/interp/nrungo.boot')
-rw-r--r--src/interp/nrungo.boot11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/interp/nrungo.boot b/src/interp/nrungo.boot
index 725be391..90497aea 100644
--- a/src/interp/nrungo.boot
+++ b/src/interp/nrungo.boot
@@ -65,6 +65,11 @@ compiledLookup(op,sig,dollar) ==
--called by coerceByFunction, evalForm, findEqualFun, findUniqueOpInDomain,
-- getFunctionFromDomain, optDeltaEntry, retractByFunction
if not VECP dollar then dollar := NRTevalDomain dollar
+ -- "^" is an alternate name for "**" in OpenAxiom libraries.
+ -- ??? When, we get to support Aldor libraries and the equivalence
+ -- ??? does not hold, we may want to do the reverse lookup too.
+ -- ??? See compiledLookupCheck below.
+ if op = "^" then op := "**"
basicLookup(op,sig,dollar,dollar)
--------------------> NEW DEFINITION (see interop.boot.pamphlet)
@@ -80,12 +85,8 @@ compiledLookupCheck(op,sig,dollar) ==
fn := compiledLookup(op,sig,dollar)
-- NEW COMPILER COMPATIBILITY ON
-
- if (fn = nil) and (op = "^") then
- fn := compiledLookup("**",sig,dollar)
- else if (fn = nil) and (op = "**") then
+ if (fn = nil) and (op = "**") then
fn := compiledLookup("^",sig,dollar)
-
-- NEW COMPILER COMPATIBILITY OFF
fn = nil =>