aboutsummaryrefslogtreecommitdiff
path: root/src/algebra/strap
AgeCommit message (Collapse)AuthorFilesLines
2009-01-06 * interp/sys-utility.boot (getVMType): IndexList are lists.dos-reis70-486/+549
* interp/g-util.boot (isSubDomain): Tidy. * interp/g-opt.boot (isVMConstantForm): New. (findVMFreeVars): Likewise. * interp/define.boot (insertViewMorphisms): Remove. (emitSubdomainInfo): New. (checkVariableName): Likewise. (checkParameterNames): Likewise. (checkRepresentation): Set $subdomain where appropriate. (compDefines): Check parameter names. (compDefineFunctor1): Propagate subdomain info. (doIt): Don't call insertViewMorphisms. * interp/compiler.boot (setqSingle): Check variable name. (compIterator): Likewise. (commonSuperType): New. (satisfies): Likewise. (coerceSubset): Use them to implemen cross-subdomain coercion. (coerceSuperset): New. (comCoerce1): Use it. (compPer): New. (compRep): Likewise. * interp/c-util.boot (getRepresentation): New. (proclaimCapsuleFunction): Improve for specialized subdomains. * algebra/stream.spad.pamphlet: Don't use `per' as variable name. * algebra/si.spad.pamphlet (size$SingleInteger): Tidy. (coerce$SingleInteger): Likewise. * algebra/reclos.spad.pamphlet (nonNull$RealClosure): Don't use `rep' as parameter name. * algebra/data.spad.pamphlet (Byte): Now a subdomain of NonNegativeInteger. Tidy.
2009-01-032009-01-03 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis3-26/+5
* Makefile.pamphlet (AXIOM_SRC_TARGETS): Add all-databases. src/ChangeLog 2009-01-03 Gabriel Dos Reis <gdr@cs.tamu.edu> * lisp/core.lisp.in (|%algebraSystemIsComplete|): New. (|%basicSystemIsComplete|): Use it. * interp/wi1.boot (setqSingle): Use maximalSuperType. (coerceSubset): Simplify. (compCoerce1): Tidy. * interp/i-resolv.boot (resolveTCat): Use superType. * interp/lisplib.boot (findConstructorSlotNumber): Use isSubset. (sigsMatch): Likewise. (findDomainSlotNumber): Likewise. * interp/define.boot (compSubDomain1): Reject for complex subdomain predicate. Support paramterized subdomains. * interp/daase.lisp (interpOpen): Read superdomain slot. (getdatabase): Remove adhoc hardcoded superdomain info. Return superdomain info stored in database. (localnrlib): Read superdomain info. (write-interpdb): Write superdomain info. (database): Add superdomain slot. * interp/g-util.boot (superType): New. (maximalSuperType): Rework. Support parameterized subdomains. (noteSubDomainInfo): New. (isSubDomain): Rework. * interp/c-util.boot (isSubset): Rework. * interp/g-opt.boot (optEQ): Remove. * interp/g-cndata.boot (getImmediateSuperDomain): Remove. (maximalSuperType): Move to g-util.boot. * interp/types.boot (%Constructor): New type specifier. (%Instantiation): Likewise. * interp/compiler.boot (primitiveType): Don't return $NegativeInteger. (maxSuperType): Remove. (hasType): Use maximalSuperType. (satisfies): New. (coerceSubset): Use it. Simplify. * interp/wi2.boot (smallIntegerStep): Use maximalSuperType. * interp/sys-constants.boot ($AtVariables): New. ($NegativeInteger): Remove. ($NonPositiveInteger): Likewise. ($CategoryNames): Category is not a category. * interp/property.lisp: Remove Subsets property settings. * interp/i-coerce.boot (coerceSubDomain): Simplify. (coerceImmediateSubDomain): Remove. (getSubDomainPredicate): Simplify. * interp/category.boot (SourceLevelSubset): Use isSubDomain. (MachineLevelSubset): Likewise. * interp/modemap.boot (mergeModemap): Likewise. (isSuperDomain): Remove. (augModemapsFromDomain): Support parameterized subdomains. * interp/i-util.boot (isSubDomain): Move to g-util.boot. * Makefile.pamphlet (all-databases): New target. * interp/Makefile.pamphlet ($(AXIOMSYS)): Push :open-axiom-algebra-system onto *FEATURES*. * etc/Makefile.in (all-databases): New target.
2008-12-30 * algebra/si.spad.pamphlet (size$SingleInteger): Compute value as dos-reis1-75/+75
extended integer.
2008-12-27 * algebra/catdef.spad.pamphlet (OrderedFinite): Export `min' anddos-reis3-126/+160
`max' values. * algebra/si.spad.pamphlet (SingleInteger): Now satisfies OrderedFinite. Tidy.
2008-12-27 * algebra/net.spad.pamphlet (readBytes!$InputByteConduit): Setdos-reis6-106/+114
length of buffer to count of bytes read. * algebra/si.spad.pamphlet (SingleInteger): Now formally subdomain of Integer.
2008-12-20 * algebra/newdata.spad.pamphlet (SplittingNode): Define Rep asdos-reis1-114/+154
constant. Remove definitions for `per' and `rep'. * algebra/regset.spad.pamphlet (RegularTriangularSet): Likewise. * algebra/sregset.spad.pamphlet (SquareFreeRegularTriangularSet): Likewise. * algebra/triset.spad.pamphlet (GeneralTriangularSet): Likewise. (WuWenTsunTriangularSet): Likewise.
2008-12-14 r12459@gauss: gdr | 2008-12-12 18:18:31 -0600dos-reis17-2110/+1935
Tidy compApplyModemap. r12460@gauss: gdr | 2008-12-13 09:24:50 -0600 Tidy compMapCond. r12461@gauss: gdr | 2008-12-13 10:24:14 -0600 Activate compViableModemap. r12462@gauss: gdr | 2008-12-13 11:18:17 -0600 Remove pmatch and pmatchWithSl out of main compiler. r12463@gauss: gdr | 2008-12-13 12:26:44 -0600 Tidy compApplyModemap. r12464@gauss: gdr | 2008-12-13 16:39:28 -0600 Add compExclusiveOr. r12465@gauss: gdr | 2008-12-13 16:54:58 -0600 . r12466@gauss: gdr | 2008-12-14 15:01:33 -0600 Tidy compLogicalNot.
2008-12-09 r12415@gauss: gdr | 2008-12-06 11:42:45 -0600dos-reis5-39/+31
Implement basic support for pattern matching. r12416@gauss: gdr | 2008-12-06 18:09:19 -0600 Parse case pattern match. r12417@gauss: gdr | 2008-12-06 21:28:30 -0600 Implement basic case pattern matching for retractable domain. r12418@gauss: gdr | 2008-12-07 00:58:58 -0600 Refine retractability implementation. r12419@gauss: gdr | 2008-12-07 01:39:32 -0600 Update cached Lisp translation r12420@gauss: gdr | 2008-12-07 03:52:09 -0600 r12421@gauss: gdr | 2008-12-07 10:30:44 -0600 Implement type recovery too. r12422@gauss: gdr | 2008-12-07 19:18:09 -0600 Simplify LET-forms and COND-forms. r12423@gauss: gdr | 2008-12-07 21:21:12 -0600 Fix typos r12424@gauss: gdr | 2008-12-08 01:14:54 -0600 Parse case-pattern in the interpreter. r12427@gauss: gdr | 2008-12-08 20:32:29 -0600 Handle RetractableTo T.
2008-12-01 * interp/define.boot (disallowNiAttribute): Remove.dos-reis5-25/+25
(compDefineFunctor1): Don't use it anymore. (compCategoryItem): Filter out nil attributes here.
2008-11-30 * interp/define.boot (mustInstantiate): Fix thinko introduced bydos-reis4-9/+10
earlier tweaks. (mkExplicitCategoryFunction): Likewise.
2008-11-21Update cached algebra lisp translationdos-reis5-30/+33
2008-11-20 * algebra/wtpol.spad.pamphlet (WeightedPolynomials): Nodos-reis3-17/+16
HomotopicTo P. (OrdinaryWeightedPolynomials): Likewise. * algebra/modmonom.spad.pamphlet (ModuleMonomial): Now HomotopicTo MM. * algebra/matrix.spad.pamphlet (coerce$RectangularMatrix): Remove redundant signature. * algebra/lodop.spad.pamphlet (OrdinaryDifferentialRing): Now HomotopicTo HomotopicTo R. * algebra/alql.spad.pamphlet (DataList): Now HomotopicTo List S. * algebra/array1.spad.pamphlet (Tuple): Now HomotopicTo PrimitiveArray S. * algebra/kl.spad.pamphlet (CachableSet): Now HomotopicTo S. * algebra/java.spad.pamphlet (JavaBytecode): Now HomotopicTo Byte. * algebra/fname.spad.pamphlet (FileNameCategory): Extends HomotopicTo String. * algebra/data.spad.pamphlet (Byte): Now HomotopicTo Character.
2008-11-20 * algebra/coerce.spad.pamphlet (CoercibleFrom): New.dos-reis85-6757/+197
(ConvertibleFrom): Likewise. (RetractableTo): Use it. * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include KRCFROM and KVTFROM. * share/algebra/: Update databases.
2008-10-13 Add support for Lisp declarations in generated Lisp code.dos-reis16-195/+352
* interp/i-map.boot (compileCoerceMap): Tell backend that minivector is global. * interp/i-spec1.boot (compileADEFBody): Likewise. * interp/slam.boot (reportFunctionCompilation): Likewise. * interp/define.boot (spadCompileOrSetq): Tell backend to ignore last argument for simple functions. * interp/c-util.boot (skipDeclarations): New. (lastDeclarationNode): Likewise. (declareGlobalVariables): Likewise. (transformToBackendCode): Use them to allow for Lisp declarations in middle-end forms. * interp/sys-driver.boot (AxiomCore::%sysInit): Reading Lisp level Floating point numbers default to double precision. * algebra/strap: Update.
2008-10-11Update algebra bootstrap cache.dos-reis85-1305/+4062
2008-10-02update databasedos-reis2-903/+901
2008-09-28 * algebra/outform.spad.pamphlet (OutputForm): Remove bogusdos-reis1-470/+495
definition for Rep. Tidy.
2008-09-21 * algebra/boolean.spad.pamphlet (Boolean): Now belong todos-reis1-9/+10
OrderedFinite.
2008-09-21Update algebra databases and algebra bootstrap Lisp files.dos-reis6-483/+464
2008-09-07 Ensure SingleFloat is 32-bit, DoubleFloat 64-bit.dos-reis4-32/+29
* interp/types.boot: Tidy. * interp/sys-constants.boot: Define limits for builtin numeric types. * interp/sys-os.boot: Import sys-constants. * interp/foam_l.lisp: Import sys-constants. Align builtin numeric types with OpenAxiom runtime's. * interp/fortcall.boot: Tidy. * interp/i-output.boot: Likewise. * interp/Makefile.pamphlet (foam_l.$(FASLEXT)): Now require sys-constants.$(FASLEXT). * algebra/si.spad.pamphlet: Use $ShortMinimum and $ShortMaximum for SingleInteger limits. * algebra/sf.spad.pamphlet: Use $DoubleFloatMaximum, $DoubleFloatMinimum for DoubleFloat limits. * algebra/strap: Update cached Lisp translation.
2008-09-012008-09-01 Martin Rubey <martin.rubey@univie.ac.at>dos-reis9-232/+188
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.
2008-08-31 * algebra/boolean.spad.pamphlet (Boolean): Remove definition ofdos-reis3-226/+222
operator ^. * algebra/aggcat.spad.pamphlet (BitAggregate): Likewise. * algebra/color.spad.pamphlet: Replace use of '^' as logical negation by 'not'. * algebra/ddfact.spad.pamphlet: Likewise. * algebra/fortran.spad.pamphlet: Likewise. * algebra/gaussfac.spad.pamphlet: Likewise. * algebra/gbeuclid.spad.pamphlet: Likewise. * algebra/gbintern.spad.pamphlet: Likewise. * algebra/ghensel.spad.pamphlet: Likewise. * algebra/groebsol.spad.pamphlet: Likewise. * algebra/ideal.spad.pamphlet: Likewise. * algebra/idecomp.spad.pamphlet: Likewise. * algebra/indexedp.spad.pamphlet: Likewise. * algebra/listgcd.spad.pamphlet: Likewise. * algebra/mfinfact.spad.pamphlet: Likewise. * algebra/modgcd.spad.pamphlet: Likewise. * algebra/multfact.spad.pamphlet: Likewise. * algebra/multsqfr.spad.pamphlet: Likewise. * algebra/newpoint.spad.pamphlet: Likewise. * algebra/npcoef.spad.pamphlet: Likewise. * algebra/permgrps.spad.pamphlet: Likewise. * algebra/pgcd.spad.pamphlet: Likewise. * algebra/pleqn.spad.pamphlet: Likewise. * algebra/qalgset.spad.pamphlet: Likewise. * algebra/radeigen.spad.pamphlet: Likewise. * algebra/rep2.spad.pamphlet: Likewise. * algebra/solverad.spad.pamphlet: Likewise. * algebra/space.spad.pamphlet: Likewise. * algebra/view2D.spad.pamphlet: Likewise. * algebra/strap/: Update cached Lisp translateion * share/algebra/: Update databases.
2008-08-17 * algebra/Makefile.pamphlet (all-algstrap): New.dos-reis85-1841/+8768
* algebra/strap: Update cached Lisp translation.
2008-08-16 * algebra/strap: New. Sequester cached Lisp translation ofdos-reis85-0/+19641
algebra bootstrap domains here.