aboutsummaryrefslogtreecommitdiff
path: root/src/share/algebra/category.daase
AgeCommit message (Collapse)AuthorFilesLines
2013-05-13Update databasesdos-reis1-1/+1
2013-05-13 Remove IndecedVector.dos-reis1-1994/+1977
2013-05-13 * algebra/carten.spad.pamphlet (CartesianTensor): Usedos-reis1-3489/+3273
PrimitiveArray in lieu of 0-based IndexedVector.
2013-05-12fix databases corruptiondos-reis1-1/+1
2013-05-12 * algebra/matrix.spad.pamphlet (RectangularMatrix) [ZERO]: Remove.dos-reis1-1/+1
(SquareMatrix) [ZERO, ONE]: Likewise.
2013-05-12 * algebra/catdef.spad.pamphlet (OrderedRing): Extenddos-reis1-5/+8
CharactericZero too.
2013-05-11 * algebra/array2.spad.pamphlet (InnerTwoDimensionalArray): Renamedos-reis1-40/+40
from InnerIndexedTwoDimensionalArray. Adjust users.
2013-05-11 Remove IndexedTwoDimensionalArray.dos-reis1-3809/+4018
2013-05-11Remove IndexedMatrix as unuseddos-reis1-2921/+2913
2013-05-11Introduce opcodes for arrays constructionsdos-reis1-1/+1
2013-05-10Add opposite? and annihilate? exports.dos-reis1-3211/+3211
2013-05-09 * algebra/indexedp.spad.pamphlet (IndexedDirectProductObject)dos-reis1-95/+95
[combineWithIf]: New.
2013-05-07Tidy indexed direct product domainsdos-reis1-2/+10
2013-05-07 * algebra/indexedp.spad.pamphlet (IndexedProductTerm): New domain.dos-reis1-2912/+2913
2012-02-25 * algebra/catdef.spad.pamphlet (BinaryOperatorCategory): New.dos-reis1-3478/+3490
(BinaryOperation): Likewise. (IdempotentOperatorCategory): Likewise. (SemiGroupOperatorCategory): Likewise. (SemiGroupOperation): Likewise. (MonoidOperatorCategory): Likewise. (MonoidOperation): Likewise. * algebra/exposed.lsp.pamphlet: Expose them. * algebra/Makefile.in (oa_algebra_layer_0): Include IDEMOPC, SGPOPC, SPGOP, MONOPC, BINOPC. (axiom_algebra_layer_1): Include MONOP.
2012-02-19 * interp/br-data.boot (libConstructorSig): Rename T$ to T fordos-reis1-1/+1
external name printing. Do not call ncParseFromString.
2012-02-15 * algebra/catdef.spad.pamphlet (Ring): Extends SemiRing.dos-reis1-3204/+3217
(Dioid): New. Extend OrderedAbelianMonoid and SemiRing. * algebra/exposed.lsp.pamphlet: Expose Dioid.
2012-02-07 * interp/lisplib.boot (dbLocateModule): New.dos-reis1-3021/+3033
(findModule): Use it. Simplify. (loadLib): Tidy. (genericLoadDB): New. (loadDB): Use it. (loadDBIfCan): New. * interp/c-util.boot (lookupDefiningFunction): Give up gracefully if the domain of computation is not compiled yet. * algebra/Makefile.in ($(OUT)/SPADAST.$(FASLEXT)): Require $(OUT)/SUCHTAST.$(FASLEXT).
2012-02-03 * config/open-axiom.m4 (OPENAXIOM_ALIGNAS_SPECIFIER): New.dos-reis1-3021/+3021
(OPENAXIOM_CHECK_MISC): Use it. src/ * utils/vm.H: Add more VM data structures. * utils/vm.cc (BasicContext::make_operator): Define. * algebra/Makefile.in (SPADFILES): Include syntax.spad and spad-parser.spad.
2012-01-14 * algebra/catdef.spad.pamphlet (Finite) [random]: Provide defaultdos-reis1-3022/+3010
implementation. * algebra/boolean.spad.pamphlet (KleeneTrivalentLogic): Now satisfy Finite. Use Maybe Boolean as representation.
2011-10-26 * interp/postpar.boot (postSignature): Tidy.dos-reis1-1/+1
* interp/parse.boot (transCategoryItem): Remove as dead code. * interp/lisplib.boot (finalizeLisplib): Remove use of removeZeroOne. * interp/cattable.boot (categoryParts): Tidy.
2011-10-23 * interp/compiler.boot (compAtomWithModemap): Handle code-gen here.dos-reis1-1/+1
2011-10-22 * interp/br-op2.boot (htSayExplicitExports): Don't forget possibledos-reis1-1/+1
constant marker in exported signatures. * interp/cattable.boot (simpHas): Likewise. * interp/format.boot (form2String1): Likewise. * interp/i-eval.boot (evaluateSignature): Likewise. * interp/i-funsel.boot (hasCaty): Likewise. (hasAttSig): Likewise. * interp/define.boot (extendsCategory): Likewise. (extendsCategoryBasic): Likewise. (catExtendsCat?): Likewise. (mkExportFromDescription): New. (mkCategoryPackage): Use it. * boot/tokens.boot: Add new selectors: mapOpsig, mapOperation, mapPredicate, and mapImpl.
2011-10-21 * interp/define.boot (compDefineCapsuleFunction): Reimplementdos-reis1-1/+1
signature inference. (hasSigInTargetCategory): Implement what the documentation says: infer the signature from the target category, not local declaration.
2011-10-19 * interp/postpar.boot (postNormalizeName): New.dos-reis1-1/+1
(postAtom): Use it. (postMDef): Do not generate artificial list of nils. Leave left-hand-side as written in source code. * interp/compiler.boot (compMacro): Tidy. * interp/define.boot (checkRepresentation): Likewise. * interp/parse.boot (parseMDEF): Likewise. * algebra/syntax.spad.pamphlet (MacroAst): Adjust.
2011-10-18 * interp/postpar.boot (displayPreCompilationErrors): Dot not checkdos-reis1-1/+1
for interactive mode. (postBigFloat): Likewise. (postDef): Likewise. (postMDef): Likewise. (tuple2List): Likewise. (postReduce): Likewise. (postQUOTE): Remove. (postQuot): Likewise. (postOp): Likewise. (postTran): Adjust. * interp/newaux.lisp: Replace %LET with ':='. * interp/property.lisp: Likewise. * interp/g-util.boot (getTypeOfSyntax): Likewise. * interp/define.boot (checkRepresentation): Likewise. (doIt): Likewise. * interp/compiler.boot (compSetq): Likewise. (compRecoverGuard): Likewise. (compReduce1): Likewise. * interp/c-util.boot (lhsOfAssignment): Likewise. (isAlmostSimple): Likewise. * interp/c-doc.boot (recordAttributeDocumentation): Likewise. * interp/parse.boot (parseLeftArrow): Remove. (parseLETD): Likewise. (parseAssign): Rename from parseLET. * algebra/syntax.spad.pamphlet (SpadAst): Handle both cases.
2011-10-16 * algebra/boolean.spad.pamphlet (Boolean): Implement defaultdos-reis1-1/+1
Boolean operators in terms of Logic operators. (PropositionalFormula): Implement Logic operators instead of Boolean operators. * algebra/exposed.lsp.pamphlet: Expose PropositionalFormulaFunctions1 and PropositionalFormulaFunctions2.
2011-10-12 * algebra/boolean.spad.pamphlet (Reference) [elt]: Remove.dos-reis1-5/+3
[setelt]: Likewise. * algebra/lodof.spad.pamphlet: Adjust use. * algebra/float.spad.pamphlet: Likewise. * algebra/divisor.spad.pamphlet: Likewise. * algebra/curve.spad.pamphlet: Likewise. * algebra/card.spad.pamphlet: Likewise. * algebra/algext.spad.pamphlet: Likewise. * algebra/op.spad.pamphlet: Likewise. * algebra/suls.spad.pamphlet: Likewise. * algebra/sups.spad.pamphlet: Likewise. * algebra/supxs.spad.pamphlet: Likewise. * algebra/suts.spad.pamphlet: Likewise. * algebra/symbol.spad.pamphlet: Likewise. * algebra/view3D.spad.pamphlet: Likewise. * algebra/viewDef.spad.pamphlet: Likewise.
2011-10-01 * boot/utility.boot: Define BOOTTRAN namespace.dos-reis1-1/+1
(setUnion): New. (setDifference): New. * boot/translator.boot (packageBody): New. (translateToplevel): Use it. Translate namespace definition. * boot/tokens.boot: Replace bitmask with bitref. Do not translate setDifference and setUnion. * boot/parser.boot (bpDef): Now include namespace definition. (bpComma): Remove namespace rule as subsumed by Where rule. * boot/Makefile.in: Remove dependencies on initial-env.lisp. (AXIOM_LOCAL_LISP_sources): Remove as unused, (boot_sources): Remove as redundant with boot_SOURCES. * boot/initial-env.lisp: Remove.
2011-09-20 * algebra/annacat.spad.pamphlet: Remove.dos-reis1-3585/+3472
* algebra/routines.spad.pamphlet: Likewise. * algebra/functions.spad.pamphlet: Likewise. * algebra/tools.spad.pamphlet: Likewise. * algebra/cont.spad.pamphlet: Likewise. * algebra/fortran.spad.pamphlet: Likewise. * algebra/fortmac.spad.pamphlet: Likewise. * algebra/fortpak.spad.pamphlet: Likewise.
2011-09-20 * algebra/asp.spad.pamphlet: Remove.dos-reis1-3582/+3527
* algebra/c02.spad.pamphlet: Likewise. * algebra/c05.spad.pamphlet: Likewise. * algebra/c06.spad.pamphlet: Likewise. * algebra/d01.spad.pamphlet: Likewise. * algebra/d02.spad.pamphlet: Likewise. * algebra/d03.spad.pamphlet: Likewise. * algebra/e01.spad.pamphlet: Likewise. * algebra/e02.spad.pamphlet: Likewise. * algebra/e04.spad.pamphlet: Likewise. * algebra/f01.spad.pamphlet: Likewise. * algebra/f02.spad.pamphlet: Likewise. * algebra/f04.spad.pamphlet: Likewise. * algebra/f07.spad.pamphlet: Likewise. * algebra/s.spad.pamphlet: Likewise. * algebra/d01Package.spad.pamphlet: Likewise. * algebra/d02Package.spad.pamphlet: Likewise. * algebra/d03Package.spad.pamphlet: Likewise. * algebra/e04Package.spad.pamphlet: Likewise. * algebra/d01agents.spad.pamphlet: Likewise. * algebra/d01routine.spad.pamphlet: Likewise. * algebra/d01transform.spad.pamphlet: Likewise. * algebra/d01weights.spad.pamphlet: Likewise. * algebra/d02agents.spad.pamphlet: Likewise. * algebra/d02routine.spad.pamphlet: Likewise. * algebra/d03agents.spad.pamphlet: Likewise. * algebra/d03routine.spad.pamphlet: Likewise. * algebra/e04agents.spad.pamphlet: Likewise. * algebra/e04routine.spad.pamphlet: Likewise.
2011-09-15 * algebra/alql.spad.pamphlet (IndexCard): Now satisfiesdos-reis1-5/+7
CoercibleFrom String. Remove explicit coerce export. * algebra/carten.spad.pamphlet (CartesianTensor): Remove explicit coerce export. Add satisfaction of CoercibleFrom appropriate domains. * algebra/color.spad.pamphlet (Palette): Relace explicit coerce export with CoercibleTo %. * algebra/constant.spad.pamphlet (InnerAlgebraicNumber): Likewise. * algebra/dpolcat.spad.pamphlet (DifferentialVariableCategory): Likewise.
2011-09-10 Remove IndexedList.dos-reis1-3112/+3092
* algebra/list.spad.pamphlet (IndexedList): Fold definition into List. Remove. * algebra/exposed.lsp.pamphlet: Don't expose ILIST. * algebra/Makefile.in: Adjust.
2011-09-09 * interp/g-opt.boot (optIadd): Remork.dos-reis1-2315/+2306
(optIsub): Likewise. (optIdec): New. * algebra/string.spad.pamphlet (IndexedString): Fold definition into String. Remove. (Character): Tidy. (CharacterClass): Likewise. * algebra/exposed.lsp.pamphlet: Do not expose ISTRING.
2011-09-09 * algebra/syntax.spad.pamphlet (Identifier): Removedos-reis1-4/+5
CoercibleTo Symbol and CoercibleTo String properties. * algebra/symbol.spad.pamphlet (Symbol): Make RetractableTo Identifier.
2011-09-09 * algebra/op.spad.pamphlet (BasicOperator): Use string$Stringdos-reis1-1/+1
instead of coercion from Identifier to String.
2011-09-09 * algebra/string.spad.pamphlet (String) [string]: New overload todos-reis1-1/+1
convert from Identifier.
2011-09-07 * interp/lisplib.boot (finalizeLisplib): Finalize documentaiondos-reis1-1/+1
only if not bootstrapping. (isFunctor): Tidy. * interp/g-util.boot (superType): Tidy. * interp/database.boot (getDualSignature): Rename from getDualSignatureFromDB. Adjust callers. * interp/c-util.boot (isKnownCategory): Remove. (diagnoseUnknownType): Use isCategoryForm. * interp/bootlex.lisp (GET-INTEGER-IN-RADIX): Use SPAD_SYNTAX_ERROR. * interp/metalex.lisp (GET-STRING-TOKEN): Likewise. * interp/parsing.lisp (MUST): Likewise. * algebra/boolean.spad.pamphlet (Refrence) [coerce]: Bypass conversion to Identifier. * algebra/domain.spad.pamphlet (ContructorKind): Tidy.
2011-09-07 * interp/nruncomp.boot (NRTaddInner): Use the dual signature.dos-reis1-1/+1
* interp/lisplib.boot (writeDualSignature): New. (finalizeLisplib): Likewise. * interp/define.boot (compDefineCategory2): Compute dual signature. (compDefineFunctor1): Likewise. * interp/daase.lisp (LOCALNRLIB): Juts read dual signature info; don't compute it.
2011-09-07 * interp/define.boot (compDefineFunctor1): Augment the envionmentdos-reis1-1/+1
with current instantiation. * interp/c-util.boot (isSubset): Accept values of current instantiation as values of the current domain.
2011-09-07 * interp/compiler.boot (compImport): Don't do anything ifdos-reis1-1/+1
bootstrapping: there is no much to import for now. * interp/define.boot (getOperationAlist): Get the isFunctor property directly. (addDomain): Call isDomainForm.
2011-09-06 * interp/define.boot: Use DB for current constructor.dos-reis1-1/+1
(mkCategoryPackage): Category defaults are packages, not domains. * interp/functor.boot (encodeFunctionName): Use current constructor DB. First argument is now a DB. Adjust caller. * algebra/domain.spad.pamphlet (DomainConstructo) [functorData]: Use getInfovec.
2011-09-05 * interp/nruncomp.boot (updateSlot1DataBase)e: Remove.dos-reis1-1/+1
(newLookupInCategories1): Remove. (newLookupInCategories): Do not call it. * interp/define.boot ($isOpPackageName): Remove. (compDefinFunctor1): Do not emit slot1 database info for category defaulta. ($lisplibSlot1): Remove. * interp/lisplib.boot: Likewise. (finalizeLisplib): Do not write slot1 info.
2011-09-05 * interp/lisplib.boot (writeCategory): New,dos-reis1-143/+143
(finalizeLisplib): Use it. Write category bodies in generated Lisp code file. * interp/daase.lisp (GETDATABASE) [CONSTRUCTORCATEGORY]: Don't bother with package and domain constructors. * interp/database.boot (getConstructorCategory): Rename from getConstructorCategoryFromDB. Reimplement, Adjusr callers.
2011-08-28 * interp/lisplib.boot (writeInstanceCache): Remove.dos-reis1-1/+1
(finalizeLisplib): Don't call it.
2011-08-25 * interp/hashcode.boot: Remove.dos-reis1-1/+1
*interp/interop.boot: Move OpenAxiom relevant code to define.boot and nrunfast.boot. Remove.
2011-08-25 * interp/daase.lisp (dbArity, dbInstanceCache): New accessors.dos-reis1-1/+1
* interp/database.boot (loadDBIfnecessary): New. (dbMutable?): Likewise. * interp/lisplib.boot (finalizeLisplib): Record mutable property.
2011-08-22 * interp/daase.lisp: Remove NILADIC field from DATABASE structure.dos-reis1-1/+1
(dbNiladic?): Remove. Adjust users. (WRITE-INTERP): Don't write NILADIC field.
2011-08-21 * interp/lisplib.boot (leaveIfErrors): Take kind as argument.dos-reis1-4/+2
(writeInfo): New. (writeSuperDomain): Likewise. (finalizeLisplib): Use it. Take constructor as argument. * interp/define.boot ($lisplibSuperDomain): Remove. Adjust users. ($lisplibKind): Remove Adjust users. (emitSubdomainInfo): Set dbSuperDomain. (incompleteFunctorBody): Likewise. * interp/daase.lisp: Add new database accessors. (GETDATABASE): Fix handling of superDomain property. * interp/br-util.boot (dbConstructorKind): Remove. * interp/br-con.boot: Remove deadcode. (dbShowCons1): Adjust. * interp/br-saturn.boot (dbShowConsKinds): Likewise.
2011-08-20 * interp/sys-utility.boot (constructorDB): New.dos-reis1-1/+1
* interp/daase.lisp (dbNiladic?): New. Use it to access niladic property. of a constructor. * interp/database.boot: Import daase. (niladicContructorFromDB): Use it. * interp/define.boot (compDefineCategory): Don't write compilerInfo garbage. (compDefineFunctor1): Likewise. (compDefineCategory2): Set niladic property. (compDefineFunctor): Likewise. * interp/lisplib.boot (loadLib): Do not set niladic property. It is now a side-effect of loading. (loadLibNoUpdate): Do not check for version. (makeConstructorAutoload): Do not set niladic property. (initializeLisplib): Do not emit code to check version. (mkCtorDBForm): New. (writeNiladic?): Likewise. (finalizeLisplib): Do not set niladic property. * interp/patches.lisp: Remove deadcode. * interp/sys-constants.boot (MAJOR-VERSION): Remove.