aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-11-23 * interp/functor.boot (SigSlotsMatch): Remove. Adjust caller.dos-reis2-13/+7
(LookUpSigSlots): Tidy.
2011-11-23 * interp/define.boot (compile): Take the signature as third argument.dos-reis3-18/+18
Adjust callers. (compDefineFunctor1): Do not bind $functionLocations. (compDefineCapsuleFunction): Do not update. * interp/lisplib.boot (transformOperationAlist): Do not consult $functionLocations.
2011-11-22 * interp/define.boot (assignCapsuleFunctionSlot): Move fromdos-reis3-23/+23
nruncomp.boot. Rename from NRTassignCapsuleFunctionSlot. Take first parameter as a DB. Adjust callers. (compDefineCapsuleFunction): Tidy.
2011-11-21 * interp/nruncomp.boot (getLocalIndex): Rename from NRTgetLocalIndex.dos-reis4-18/+24
Adjust callers. * interp/compiler.boot: Adjust. * interp/define.boot: Likewise.
2011-11-18 * interp/category.boot (FindFundAncs): Tidy. Access input indos-reis2-18/+24
accordance with documented abstract structure.
2011-11-17 * interp/i-eval.boot (evaluateType): Handle % and and signatures.dos-reis2-3/+12
(evaluateFormAsType): Handle builtin constructor instantiations.
2011-11-16 * interp/category.boot (mkCategory): Tidy.dos-reis4-44/+77
(SigListUnion): Likewise. The last argument is not a vector buffer. (JoinInner): Use a vector buffer for scratch space to compute the initial principal ancestor. Simplify copy logic. * interp/g-util.boot (mkBuffer): New. (bufferData): New. (buffeLength): Likewise. (resizeBuffer): Likewise. (bufferToVector): Likwise. * lisp/core.lisp.in (mkVector): New. Export.
2011-11-16 * interp/category.boot (JoinInner): Remove effective dead codedos-reis2-28/+7
controlled by originalvector which has non-changing value false.
2011-11-15 * interp/category.boot (JoinInner): Use idiomatic Boot for loops.dos-reis2-77/+69
2011-11-14 * interp/category.boot ($NewCatVec): Remove.dos-reis2-94/+101
(SigListUnion): Take the principal ancestor as third argument. Use it instead of $NewCatVec. Adjust caller. (JoinInner): Do not bind $NewCatVec. Introduce local variable principal. Tidy.
2011-11-14 * interp/category.boot (filterConditionalCategories): Split out ofdos-reis2-21/+40
JoinInner. (JoinInner): Call it.
2011-11-14 * interp/category.boot (SigListMember): Remove as deadcode.dos-reis2-24/+18
(SigEqual): Remove. (predicateImplies): Rename from PredImplies. Rework it to match documentation. Adjust callers. (CondAncestorP): Adjust arguments in call to predicateImplies. (JoinInner): Likewise.
2011-11-14 * lisp/core.lisp.in: Export %sysInit.dos-reis4-506/+557
* interp/sys-driver.boot (%sysInit): Don't redefine. Reset function binding.
2011-11-13 * interp/category.boot (JoinInner): Tidy.dos-reis2-28/+26
2011-11-13 Fix SF/3436999dos-reis2-76/+5
* utils/storage.H: Revert accidental commit of unfinished changes.
2011-11-13 * interp/sys-driver.boot (initializeDatabases): Honor --initial-db.dos-reis8-81/+100
(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-13 * interp/br-data.boot (buildLibdbConEntry): Exit early if argumentdos-reis6-20/+104
is a builtin constructor. (mkDependentsHashTable): Filter out builtin constructors. * interp/cattable.boot (genCategoryTable): Likewise. * interp/database.boot (getConstructorModemap): Load the contructor if necessary and try again before failing. * interp/define.boot (NRTgetLookupFunction): Handle multiple inheritance of domains. (getBaseExports): Rename from getExportCategory. Adjust caller. Handle multiple inheritance of domains. (extendsCategory): Do not reference $functorForm. Take it from the DB argument. (getTargetFromRhs): Do not optimize codegen.
2011-11-12 * interp/define.boot (getTargetFromRhs): Do not try to recorddos-reis2-2/+13
references to used entities.
2011-11-11 * interp/define.boot (compDefineCapsuleFunction): Take firstdos-reis2-23/+31
argument as a DB for the current constructor. Adjust callers. (compile): Likewise. (spadCompileOrSetq): Likewise. (compileConstructor): Likewise. (compileConstructor1): Likewise.
2011-11-11 * interp/br-data.boot: Change NRTEVAL to %eval.dos-reis7-11/+20
* interp/c-util.boot: Likewise. * interp/define.boot: Likewise. * interp/nruncomp.boot: Likewise. * interp/nrunfast.boot: Likewise. * interp/showimp.boot: Likewise.
2011-11-11 * interp/c-util.boot (dbByteList): New accessor macro.dos-reis3-12/+25
* interp/define.boot ($byteVec): Remove. (getInfovecCode): Do not bind it. (makeGoGetSlot): Take DB as first parameter. Adjust caller. Update dbByteList. (NRTmakeCategoryAlist): Adjust.
2011-11-11 * interp/compiler.boot (applyMapping): Emit special call fordos-reis6-6/+50
domain producing mapping variables. (compWithMappingMode): Coerce constructors to function objets. (compFormWithModemap): Constructor calls are direct calls. Everything else is ordinary indirect call. * interp/g-opt.boot (optCall): Handle function objects. * interp/nruncomp.boot (NRTencode): Encode the elaboration of atomic forms, not the source level form. * testsuite/compiler/ctor-mapping.spad: New.
2011-11-10 * algebra/boolean.spad.pamphlet (IndexedBits) [Not, Or, And]: Remove.dos-reis5-31/+18
Implement ~. \/, and /\ instead. * algebra/si.spad.pamphlet (SingleInteger): Likewise. * algebra/pattern.spad.pamphlet (Pattern): Adjust. * algebra/string.spad.pamphlet (CharacterClass): Likewise.
2011-11-10 * interp/daase.lisp (dbLookupFunction): New accessor macro.dos-reis5-18/+32
* 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-11-09 * interp/define.boot (compDefineFunctor1): Clear dbTemplate beforedos-reis3-1/+26
compilation starts. * interp/lisplib.boot (writeLoadInfo): New. (writeTemplate): Likewise. (finalizeLisplib): Use it to write template.
2011-11-09 * interp/define.boot (compFunctorBody): First argument is now a DB.dos-reis30-105/+139
Adjustt caller. (incompleteFunctorBody): Likewise. * interp/bc-matrix.boot: Use toString instead of STRINGIMAGE where appropriate. * interp/bc-solve.boot: Likewise. * interp/bc-util.boot: Likewise. * interp/br-con.boot: Likewise. * interp/br-op1.boot: Likewise. * interp/br-saturn.boot: Likewise. * interp/c-doc.boot: Likewise. * interp/c-util.boot: Likewise. * interp/clam.boot: Likewise. * interp/format.boot: Likewise. * interp/functor.boot: Likewise. * interp/g-timer.boot: Likewise. * interp/htsetvar.boot: Likewise. * interp/i-funsel.boot: Likewise. * interp/i-map.boot: Likewise. * interp/i-output.boot: Likewise. * interp/i-resolv.boot: Likewise. * interp/i-special.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/i-util.boot: Likewise. * interp/msg.boot: Likewise. * interp/newfort.boot: Likewise. * interp/parse.boot: Likewise. * interp/pathname.boot: Likewise. * interp/setvars.boot: Likewise. * interp/showimp.boot: Likewise. * interp/slam.boot: Likewise. * interp/trace.boot: Likewise.
2011-11-08fix thinkosdos-reis2-2/+2
2011-11-07Fix thinkodos-reis1-1/+1
2011-11-07 * interp/lisplib.boot (isDomainForm): Tidy.dos-reis2-0/+5
2011-11-07 * interp/lisplib.boot (getConstructorOpsAndAtts): Fold content indos-reis3-15/+21
called. Remove. (getFunctorOpsAndAtts): Simplify. (getSlotFromFunctor): Rework. * interp/define.boot (getInfovecCode): Bind $byteVec and $byteAddress here. (compDefineFunctor1): Not here.
2011-11-07 * interp/compiler.boot ($compileOnlyCertainItems): Remove.dos-reis5-78/+32
* interp/define.boot ($NRTslot1Info): Likewise. (getInfovecCode): Add additional environment argument. Adjust caller. Call NRTmakeSlot1Info here. (NRTgetLookupFunction): Lose second and third arguments. They are derivable from the DB argument. Adjust caller. (compDefineFunctor1): Do not bind $NRTslot1Info. (compDefineCapsuleFunction): Adjust. (compile): Likewise. * interp/i-syscmd.boot (compilerDoitWithScreenedLisplib): Remove. Adjust caller. * interp/nruncomp.boot (NRTmakeSlot1Info): Tak a DB argument. Adjust caller. (mkSlot1sublis): Remove.
2011-11-07 * utils/vm.H: Redefine value representation.dos-reis2-76/+101
2011-11-06 * interp/c-doc.boot (checkBalance): Fix a latent logic bug.dos-reis3-23/+24
* algebra/Makefile.in: Tidy.
2011-11-05 * algebra/Makefile.in: Rework bootstrap dependency.dos-reis2-373/+859
2011-11-04 * interp/functor.boot (compCategories): Take second parameter asdos-reis5-40/+40
environment. Adjust callers. (compCategories1): Likewise. (NewbFVectorCopy): Remove as deadcode. (worthlessCode): Tidy. (DescendCode): Take additional environment parameter. Adjust callers. * interp/define.boot (isMacro): Simplify. (wrapDomainSub): Remove. Adjust callers. * algebra/Makefile.in (strap-2/%.$(FASLEXT)): Fix typo.
2011-11-02 * interp/lisplib.boot (findModule): Tidy.dos-reis2-2/+14
(loadLib): Exit early on builtin constructors. (loadDB): Likewise.
2011-11-02 * interp/spad-parser.boot (parseSpadFile): Use $lineStack notdos-reis4-37/+43
BOOT-LINE-STACK. Use try/finally to ensure streams are closed. * interp/spad.lisp (New,ENTRY,2): Use parseNewExpr. * interp/util.lisp (string2SpadTree): Likewise.
2011-11-02 * interp/c-util.boot (dbSubstituteAllQuantified): New.dos-reis3-5/+15
* interp/define.boot (NRTmakeCategoryAlist): Use it. (compDefineFunctor1): Likewise.
2011-11-02 Add compiler support for implicit parameters.dos-reis4-21/+109
* interp/compiler.boot (bindPredicateExistentials): Rename from constructorCondition. Now return a substitution on success, otherwise failure. (solveEquation): New. (solveSubsumption): Likewise. (deduceImplicitParameters): Likewise. (evaluateConstructorModemap): Use it. Tidy.
2011-10-31 * interp/i-funsel.boot (evalMmCond0): Tidy. Call evalMmGuard todos-reis3-9/+65
validate modemap evaluation. (evalMmGuard): New. (evalMmCat): Do not call orderMmCatStack here. The stack is already ordered by evalMmGuard, sole caller. (hasCate): Handle domain query variables. (unifyStruct): Call unifyQueryStruct for query variables. (unifyQueryStruct): New. * interp/g-util.boot (postComposeSubst): New. (queryVar?): Likewise.
2011-10-31null x ~> x = nil cleanupdos-reis1-35/+35
2011-10-31 * interp/compiler.boot (evaluateConstructorModemap): Rename fromdos-reis4-22/+50
substituteInfoFunctorModemap. (constructorCondition): New. * interp/define.boot (compDefineCategory2): Compute dual signature early on. (compDefineFunctor1): Likewise. (typingKind): New. (deduceImplicitParameters): Use it. * interp/database.boot (modemapsFromCategory): Take a first argument as a DB. Tidy. Adjust caller. Add constructor condition. (modemapsFromFunctor): Likewise. Lose last argument. (mkDatabasePred): Remove. (formal2Pattern): Likewise.
2011-10-30 * interp/define.boot (compDefineCategory2): Compute dual signaturedos-reis3-22/+22
early on. (compDefineFunctor1): Likewise. * interp/database.boot (modemapsFromCategory): Take a first argument as a DB. Tidy. Adjust caller. (modemapsFromFunctor): Likewise. Lose last argument. (mkDatabasePred): Remove. (formal2Pattern): Likewise.
2011-10-30 * interp/define.boot (compDefineCategory2): Compute dual signaturedos-reis3-11/+17
early on. * interp/database.boot (modemapsFromCategory): Take a first argument as a DB. Tidy. Adjust caller.
2011-10-30 * interp/sys-macros.lisp (MKPF1): Tidy.dos-reis12-113/+203
* interp/sys-constants.boot ($QueryVariables): New. * interp/define.boot ($whreDecls): Remove. (checkRepresentation): Take a DB as first parameter. Adjust Callers. (buildConstructorCondition): New (deduceImplicitParameters): Likewise (compDefineCategory2): Use it. (compDefineFunctor1): Likewise. (typeDependencyPath): Remove. (inferConstructorImplicitParameters): Likewise. * interp/compiler.boot (compTopLevel): Do not bind $whereDecls. (recordDeclarationInSideCondition): Take additional reference parameter to the list of processed decls. Adjust callers. (compWhere): Record any side decls in compilation environment. * interp/c-util.boot (makeCompilationData): Initialize implicit data. (dbParameters): New. (dbImplicitData): New accessor macro. (dbImplicitParameters): New. (dbImplicitConstraints): Likewise. (dbSubstituteFormals): Likewise. (dbSubstituteQueries): Likewise. * interp/database.boot (fixUpPredicate): Tidy. * boot/utility.boot (applySubst): Early exit on identity substitution. (applySubst!): Likewise. (applySubstNQ): Likewise. * boot/ast.boot (bfIS1): Accept pattern matching against Boolean constant true.
2011-10-29 * interp/daase.lisp (dbCompilerData): New accessor macro.dos-reis6-32/+67
(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/nruncomp.boot (NRTaddDeltaCode): Take a DB parameter.dos-reis3-35/+45
Adjust callers. (NRTdescendCodeTran): Likewise. * interp/define.boot (makeDomainTemplate): Lose second argument. Adjust callers. (NRTgetLookupFunction): Take a DB as first argument. Adjust callers. (NRTextendsCategory1): Likewise. (extendsCategory): Likewise. (compDefineFunctor1): Do not find $template. Set dbTemplate.
2011-10-29 * interp/define.boot ($atList, $sigList): Remove.dos-reis2-25/+38
(compSignature): Take a fourth parameter. (compCategoryItem): Take two more parameters. (compCategory): Create references to signature and attribute lists and pass them to callees.
2011-10-29 * interp/lisplib.boot (makePredicateBitVector): Take a DB argument.dos-reis6-10/+24
Set dbPredicates. (compConLib1): Set dbPredicates to nil. (compDefineLisplib): Likewise. (finalizeLisplib): Write dbPredicates. * boot/tokens.boot (copyTree): Do not translate. * boot/utility.boot (topyTree): Implement. Export.
2011-10-29 * interp/define.boot (getInfovecCode): Take a DB argument. Passdos-reis7-212/+36
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.