aboutsummaryrefslogtreecommitdiff
path: root/src/interp/daase.lisp
AgeCommit message (Collapse)AuthorFilesLines
2013-06-15Store category defaults constructor as part of category constructor DB.dos-reis1-1/+2
2013-05-28Have compDefine take a DB parameterdos-reis1-0/+1
2013-05-27Define getWorkingDirectory via FFI.dos-reis1-14/+3
2013-05-21Use DB data structure directly.dos-reis1-9/+1
2013-05-15Fix typodos-reis1-1/+1
2013-05-15Add DB documentation accessordos-reis1-0/+3
2012-05-23 * interp/database.boot (%Constructor): New.dos-reis1-4/+5
(makeConstructor): Likewise. (makeInitialDB): Tidy. * interp/daase.lisp (makeDB): Take two more parameters. Build a %Constructor structure object too.
2011-11-13 * interp/sys-driver.boot (initializeDatabases): Honor --initial-db.dos-reis1-7/+7
(initializeGlobalState): Don't bind $compileDefaultsOnly. * interp/sys-globals.boot ($compileDefaultsOnly): Remove. * interp/define.boot (compDefineCategory): Adjust. (compDefineCategory1): Likewise. (compDefineFunctor1): Clear dbCapsuleDefinitions. * interp/lisplib.boot (compDefineLisplib): Tidy. * interp/daase.lisp (BROWSEOPEN): Use dbSourceFile. (GETDATABASE): Likewise. (LOCALNRLIB): Likewise. (WRITE-BROWSEDB): Likewise. * algebra/Makefile.in (COMPILE_SPAD): Specifiy initial DB. (BOOTSTRAP): Likewise.
2011-11-10 * interp/daase.lisp (dbLookupFunction): New accessor macro.dos-reis1-0/+4
* interp/c-util.boot (lookupDefiningFunction): Use it. Tidy. * interp/define.boot ($lookupFunction): Remove. (getInfovecCode): Use dbLookupFunction. (compDefineFunctor1): Set it. Do not emit %incomplete anymore. * interp/lisplib.boot (writeLookupFunction): New. (finalizeLisplib): Use it.
2011-10-29 * interp/daase.lisp (dbCompilerData): New accessor macro.dos-reis1-2/+5
(dbBeingDefined?): Adjust. * interp/c-util.boot (makeCompilationData): New. (dbFormalSubst): New accessor macro. (dbSubstituteFormals): New. * interp/define.boot ($pairlis): Remove. (NRTmakeCategoryAlist): Use dbSubstituteFormals. (NRTgetLookupFunction): Likewise. (compDefineCategory2): Likewise. Set dbCompilerData and dbFormalSubst. (compDefineFunctor1): Likewise. * interp/functor.boot (ProcessCond): Use dbSubstituteFormals. * interp/lisplib.boot (NRTgenInitialAttributeAlist): Likewise. (makePredicateBitVector): Likewise. (finalizeLisplib): Do not set $pairlis.
2011-10-29 * interp/define.boot (getInfovecCode): Take a DB argument. Passdos-reis1-187/+0
it to callees. Adjust caller. * interp/database.boot (getConstructorPredicates): If contructor is being defined, return the predicates as currently known. * interp/daase.lisp (INITIAL-GETDATABASE): Remove (fillDatabasesInCore): Adjust.
2011-10-29 * interp/compiler.boot (compHasFormat): Simplify type form.dos-reis1-1/+1
2011-10-29 * interp/nruncomp.boot (mkDomainCatName): Remove.dos-reis1-0/+5
* interp/daase.lisp (DATABSE): Add new field TEMPLATE. (dbTemplate): New macro accessor. * interp/clam.boot (clearCategoryCaches): Clear dbTemplate. * interp/define.boot (DomainSubstitutionFunction): Generate code to access or set dbTemplate.
2011-10-28 * interp/daase.lisp (DATABASE): Add new field CAPSULE-DEFINITIONS.dos-reis1-0/+4
(dbCapsuleDefinitions): New macro accessor. * interp/functor.boot (encodeFunctionName): Set it. * interp/lisplib.boot ($lisplibVariableAlist): Remove. ($lisplibSignatureAlist): Likewise. (writeCapsuleLevelDefinitions): New. (finalizeLisplib): Use it. (mergeSignatureAndLocalVarAlists): Remove. * interp/clam.boot (clearCategoryCaches): Use mkDomainCatName. * interp/define.boot (DomainSubstitutionFunction): Likewise.
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-2/+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-05 Stop using LOADED symbol property of constructors.dos-reis1-3/+7
* interp/daase.lisp (DATABASE) [LOAD-PATH]: New field. (dbLoadPath): New accessor. (INITIAL-GETDATABASE): Tidy. * interp/database.boot: Use dbLoadPath and dbLoaded?. * interp/lisplib.boot: Likewise. * interp/nrunfast.boot: Likewise. * interp/showimp.boot: Likewise. * interp/br-util.boot (isLoaded?): Remove as unused.
2011-09-05 * interp/lisplib.boot (writeCategory): New,dos-reis1-10/+4
(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-09-05 * interp/daase.lisp (GETDATABASE): Do not handle PREDICATES anddos-reis1-14/+2
ATTRIBUTES selectors anymore. * interp/database.boot (getConstructorPredicates): Rename from getConstructorPredicatesFromDB. Adjust callers. (getConstructorAttributes): Rename from getConstructorAttributesFromDB. Adjust callers.
2011-09-04 * interp/lisplib.boot (writeAbbreviation): New.dos-reis1-19/+19
(writePredicates): Likewise. (finalizeLisplib): Use them. * interp/daase.lisp (squeezeCopy): New, Use it in place of SQUEEZE.
2011-09-03 * interp/property.lisp: Remove unused codes.dos-reis1-6/+4
* interp/g-util.boot (superType): If domain is $ then use current information. * interp/daase.lisp: Tidy. * interp/c-util.boot (extendsCategoryForm): Temporarily disable uses of information not coming from on-the-fly category compilation. * interp/br-data.boot (getParentsFor): Change first parameter to a DB. Adjust callers. * algebra/Makefile.in: Adjust dependencies.
2011-08-29 * interp/lisplib.boot (laodIfNecessaryAndExists): Remove as unused.dos-reis1-3/+9
(loadLibIfnecessary): Fold definition into loadIfNecessary. (loadDB): New. (writeAttributes): Likewise. (finalizeLisplib): Use it. * interp/daase.lisp (MAKE-DATABASES): Fix SQUEEZE snafu. * interp/c-util.boot (extendsCategoryForm): Prefer existing translation of category definition to re-evaluation on the fly.
2011-08-28 * interp/define.boot (compDefineCategory2): Mark begining and enddos-reis1-3/+6
of definition processing. (compDefineFunctor1): Likewise. * interp/daase.lisp (dbPrincipals): New accessor. * interp/br-data.boot (getDefaultPackageClients): Fix thinko. * interp/lisplib.boot (writeAncestors): New. (finalizeLisplib): Use it
2011-08-28 * interp/daase.lisp (DATABASE): Add new field BEING-DEFINED.dos-reis1-157/+162
(dbBeingMacro?): New accessor. (GETDATABASE): Tidy.
2011-08-25 * interp/daase.lisp (dbArity, dbInstanceCache): New accessors.dos-reis1-1/+7
* interp/database.boot (loadDBIfnecessary): New. (dbMutable?): Likewise. * interp/lisplib.boot (finalizeLisplib): Record mutable property.
2011-08-23 * interp/sys-driver.boot (initializeDatabases): New.dos-reis1-40/+74
(initializeGlobalState): Use it. * interp/spad-parser.boot (parseSpadFile): Tidy. * interp/g-cndata.boot (installConstructor): Exit early it global table not initialized. * interp/database.boot (makeInitialDB): New. (populateDBFromFile): Likewise. * interp/daase.lisp: Introduce more DB accessors. * interp/br-util.boot (dbSourceFile): Remove. * interp/br-con.boot (kdPageInfo): Use getConstructorSourceFileFromDB instead of dbSourceFile. (kPage): Likewise. * algebra/Makefile.in (SPADFILES): Include domain.spad
2011-08-23 * interp/sys-driver.boot (initializeGlobalState): Constructdos-reis1-1/+0
database tables if algebra is not complete yet. * interp/Makefile.in (${SAVESYS}): Simplify. * algebra/Makefile.in (strap-stamp): Make the destination directory.
2011-08-22 * interp/daase.lisp: Remove NILADIC field from DATABASE structure.dos-reis1-29/+13
(dbNiladic?): Remove. Adjust users. (WRITE-INTERP): Don't write NILADIC field.
2011-08-22 * interp/database.boot (getConstructorModemap): Rename fromdos-reis1-3/+3
getConstructorModemapFromDB. Adjust callers.
2011-08-22 * interp/database.boot (niladicConstructor?): Rename fromdos-reis1-1/+1
niladicConstructorFromDB. Use getConstructorFormFromDB. Adjust callers.
2011-08-21 * interp/lisplib.boot (leaveIfErrors): Take kind as argument.dos-reis1-45/+57
(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-39/+43
* 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.
2011-06-211 * interp/Makefile.in (OBJS): Remove foam_l.$(FASLEXT), $(ASCOMP).dos-reis1-339/+5
(ASCOMP, ASAUTO): Remove. * interp/axext_l.lisp: Remove. * interp/foam_l.lisp: Likewise. * interp/ax.boot: Likewise. * interp/as.boot: Likewise. * interp/daase.lisp: Adjust. * interp/i-syscmd.boot: Likewise.
2011-04-30 * More cleanupdos-reis1-1/+1
2011-04-29 * boot/utility.boot (assocSymbol): New.dos-reis1-3/+4
(applySubst): Likewise. Export. * boot/ast.boot: Use it. Remove SUBLIS and SUBLISLIS. * interp/ax.boot: Likewise. * interp/br-con.boot: Likewise. * interp/br-op1.boot: Likewise. * interp/br-op2.boot: Likewise. * interp/br-prof.boot: Likewise. * interp/br-saturn.boot: Likewise. * interp/buildom.boot: Likewise. * interp/c-doc.boot: Likewise. * interp/c-util.boot: Likewise. * interp/cattable.boot: Likewise. * interp/compiler.boot: Likewise.
2011-04-22more cleanupdos-reis1-1/+1
2011-04-22 * boot/utility.boot (copyList): Define.dos-reis1-2/+2
(append!): Likewise. * boot/tokens.boot: Do not translate nconc.
2011-04-21 * boot/tokens.boot: Don't rename nreverse.dos-reis1-3/+3
* boot/utility.boot (reverse!): Define. * boot/parser.boot: Use reverse! instead of NREVERSE. * boot/ast.boot: Generate reverse! forms instead of NREVERSE.
2010-05-16 * interp/daase.lisp ($ConstructorCache): Declare.dos-reis1-0/+2
* interp/bootlex.lisp: Fix use of SETELT. * interp/macros.lisp: Likewise. * interp/preparse.lisp: Likewise. * interp/spad.lisp: Likewise. * interp/vmlisp.lisp: Likewise.
2010-02-07 * interp/daase.lisp: Remove conditionals on :CCL.dos-reis1-84/+1
* interp/fname.lisp: Likewise. * interp/foam_l.lisp: Likewise. * interp/macros.lisp: Likewise. * interp/nlib.lisp: Likewise. * interp/patches.lisp: Likewise. * interp/sfsfun-l.lisp: Likewise. * interp/spad.lisp: Likewise. * interp/util.lisp: Likewise. * interp/vmlisp.lisp: Likewise.
2009-04-27 Fix SF/2781848dos-reis1-1/+1
* interp/daase.lisp (make-databases): Build glossary files too. * interp/br-data.boot (buildGloss): gloss.text now lives in doc/. * interp/br-search.boot (grepSource): Likewise. * interp/ht-root.boot (htGlossPage): Likewise. * etc/Makefile.in (openaxiom_glossfiles): New. (mostlyclean-local): Remove them too. (stamp-databases): Now copy glossary files too. * doc/Makefile.in ($(OUT)/gloss.text): New rule. (stamp): Make it a prerequisite. * Makefile.pamphlet (all-databases): Make all-doc a prerequisite. (all-hyper-post): Likewise. * doc/gloss.text: Resurect.
2009-01-04 * interp/daase.lisp (setdatabase): Set superdomain slot too.dos-reis1-0/+2
* interp/g-util.boot (superType): Handle current domain form. (maximalSuperType): Tidy. (noteSubDomainInfo): Call SETDATABASE.
2009-01-032009-01-03 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis1-11/+37
* 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-09-05 * interp/daase.lisp (processDir): Lose last argument. Don'tdos-reis1-6/+4
change directory. (localdatabase): Adjust call. * interp/lisplib.boot (getAllIndexPathnames): Take an argument. (getAllAldorObjectFiles): Likewise.
2008-08-17 * interp/sys-globals.boot ($verbose): Move from sys-driver.boot.dos-reis1-10/+20
(initializeGlobalState): Set it and honor it. * interp/daase.lisp (initial-getdatabase): Be talkative only when asked.
2008-08-17 * interp/sys-globals.boot ($updateCatTableIfTrue): Default to false.dos-reis1-1/+1
* interp/sys-driver.boot (AxiomCore::%sysInit): Have ECL quiet. (initializeGlobalState): Initialize new world states. * interp/define.boot (compDefine): Tidy. (compDefineCategory2): Explicitly initialize $TOP_LEVEL and $definition. * interp/daase.lisp (|fillDatabasesInCore|): Use $buildingSystemAlgebra. * interp/compiler.boot (compMakeDeclaration): Explicitly initialize $insideExpressionIfTrue. * boot/translator.boot (AxiomCore::%sysInit): Supper GCL and ECL compiler notes, but ask for warning.
2008-08-17 * interp/sys-driver.boot (openDatabases): Rename from RESTART0.dos-reis1-2/+2
(initializeGlobalState): Tidy. (executeSpadScript): Don't display start up messages. (compileSpadLibrary): Likewise. (buildDatabasesHandler): Likewise. (systemMain): Initialize global states. * interp/nrunfast.boot: Defin $NRTvec, $monitorNewWorld. * interp/daase.lisp (|fillDatabasesInCore|): Rename from RESETHASHTABLES. (|closeAllDatabaseStreams|): Rename from closeAllDatabases * interp/util.lisp (build-interpsys): Initialize macro table. * interp/htcheck.boot: Don't initialize macro table here.
2008-08-16 * interp/daase.lisp (DaaseName): Move to database.boot. Rename asdos-reis1-35/+13
pathToDatabase. (|closeAllDatabases|): New. Split from RESETHASHTABLES. * interp/util.lisp (build-interpsys): Call it here.
2008-08-15 * lisp/core.lisp.in (|$StandardLinking|): New. Export.dos-reis1-1/+2
* lisp/Makefile.in (edit): Update. * interp/daase.lisp: Don't load initial databases when --system-algebra. * interp/Makefile.pamphlet (${SAVESYS}): Build with --system-algebra.
2008-08-15 * interp/vmlisp.lisp (BPINAME): Define for ECL too.dos-reis1-1/+1
* interp/util.lisp (*BIN-TYPE*): Remove. Use $faslType throughout. * interp/daase.lisp (get-current-directory): Tidy conditional definition.