Age | Commit message (Collapse) | Author | Files | Lines |
|
Rename getFunctionTemplate to matchSignatureInTemplate.
Rename lookupInheritedDefiningFunction to lookupRemoteDefiningFunction
as the function wasn't really about inherited operators. Have it
avoid returning functions that might need their domain domain to
operate correctly.
Simplify getOpCode: it only needs two arguments since the third was
the length of the second argument.
dbDefaultPackage? is no longer a macro.
|
|
Move $lookupDefaults to he callers of newLookupInTable to surface
variabilities in the control flow.
|
|
Now that OpenAxiom emits the dual signature data also directly in the
generated executable code for a constructor, there is no no need to
consult the interpreter data base for that information. This change
relies on the previous commit, e.g. getDualSignature should be
considered invalid for builtin constructors. Any instanbility caused
by this patch should be considered a latent bug that should be given
high priority fixing.
|
|
constructors are handled before the call is a bug.
This patch fixes most the obvious and glaring places. Hopefully, the
remaining cases will be exercised when getDualSignature bypasses the
on-disk database mamouth.
|
|
|
|
* interp/c-util.boot: Likewise.
* interp/define.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/nrunfast.boot: Likewise.
* interp/showimp.boot: Likewise.
|
|
|
|
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.
|
|
* 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.
|
|
(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.
|
|
ATTRIBUTES selectors anymore.
* interp/database.boot (getConstructorPredicates): Rename from
getConstructorPredicatesFromDB. Adjust callers.
(getConstructorAttributes): Rename from getConstructorAttributesFromDB.
Adjust callers.
|
|
*interp/interop.boot: Move OpenAxiom relevant code to define.boot
and nrunfast.boot. Remove.
|
|
niladicConstructorFromDB. Use getConstructorFormFromDB.
Adjust callers.
|
|
(domainDirectory): Likewise.
(domainLookupFunction): Likewise.
(domainOperatorTable): Likewise.
(domainAttributes): Likewise.
(domainPredicates): Likewise.
(domainData): Likewise.
* interp/buildom.boot: Use new domain accessors.
* interp/functor.boot: Likewise.
* interp/interop.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/nrunfast.boot: Likewise.
|
|
dollar as objects, not as value.
(newLookupInCategories): Remove deadcode.
(newExpandGoGetTypes): Remove as unused.
|
|
|
|
|
|
* interp/br-op2.boot: Likewise.
* interp/br-saturn.boot: Likewise.
* interp/br-util.boot: Likewise.
* interp/c-util.boot: Likewise.
* interp/cattable.boot: Likewise.
* interp/database.boot: Likewise.
* interp/lisplib.boot: Likewise.
* interp/nrunfast.boot: Likewise.
|
|
|
|
binding for $lookupDefaults.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(instantiatorCtor, instantiatorArgs, categoryExports): New.
|
|
|
|
|
|
(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.
|
|
|
|
* boot/utility.boot (reverse!): Define.
* boot/parser.boot: Use reverse! instead of NREVERSE.
* boot/ast.boot: Generate reverse! forms instead of NREVERSE.
|
|
|
|
|
|
|
|
|
|
|
|
i-special.boot, nrunfast.boot. Delete.
|
|
* interp/g-util.boot (setShellEntry): Remove.
* interp/compiler.boot: Use %store to %tref forms instead of
setHSellEntry.
* interp/define.boot: Likewise.
* interp/functor.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/nrunfast.boot: Likewise.
* interp/showimp.boot: Likewise.
* interp/c-util.boot (isSimple): Tidy.
(isSideEffectFree): Likewise.
(updateCapsuleDirectory): Likewise.
|
|
* interp/scan.boot (scanInserts): Use vectorRef.
* interp/functor.boot (DescendCode): Don't check for SETELT or
QSETREFV forms.
* interp/nrunfast.boot (evalSlotDomain): Likewise.
|
|
* interp/sys-constants.boot ($CategoryNames): Include MappingCategory.
* interp/g-cndata.boot (unabbrevSpecialForms): Handle
MappingCategory, RecordCategory, and UnionCategory.
* interp/buildom.boot (MappingCategory): New.
* interp/compiler.boot: Elaboration MappingCategory forms.
* interp/g-error.boot (needsToSplitMessage): Fix thinko from
type-based dispatch done by the Boot translator.
* interp/nrunfast.boot (builtinConstructor?): New.
(generalizedBuiltinConstructor?): Likewise.
(lazyMatch): Use them.
(newHasTest): Properly recognize all flavours of category forms.
|
|
|
|
QSETVELT-1, QSINC1, QVELT, QVELT-1.
* algebra/si.spad.pamphlet: Use %iinc and %idec forms.
|
|
|
|
* interp/alql.boot: Use integer? instead of FIXP.
* interp/br-con.boot: Likewise.
* interp/br-op1.boot: Likewise.
* interp/c-util.boot: Likewise.
* interp/fnewmeta.lisp: Likewise.
* interp/ht-root.boot: Likewise.
* interp/i-analy.boot: Likewise.
* interp/i-syscmd.boot: Likewise.
* interp/i-toplev.boot: Likewise.
* interp/interop.boot: Likewise.
* interp/lisplib.boot: Likewise.
* interp/mark.boot: Likewise.
* interp/newfort.boot: Likewise.
* interp/nrunfast.boot: Likewise.
* interp/pspad1.boot: Likewise.
* interp/setvars.boot: Likewise.
* interp/showimp.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/topics.boot: Likewise.
* interp/trace.boot: Likewise.
* interp/wi1.boot: Likewise.
* interp/wi2.boot: Likewise.
* interp/word.boot: Likewise.
|
|
value argument evaluation.
(lazyMatch): Check for %llength too.
* interp/g-opt.boot ($VMsideEffectFreeOperators): Include %2bit
and %2bool.
* interp/g-util.boot: Expand them.
* interp/define.boot (compJoin): Check for %llenght too.
* algebra/boolean.spad.pamphlet: Tidy.
* algebra/domain.spad.pamphlet: Likewise.
* algebra/draw.spad.pamphlet: Likewise.
* algebra/files.spad.pamphlet: Likewise.
* algebra/list.spad.pamphlet: Likewise.
* algebra/outform.spad.pamphlet: Likewise.
* algebra/sex.spad.pamphlet: Likewise.
* algebra/sf.spad.pamphlet: Likewise.
|
|
|
|
(REFVECP): Likewise.
(CVECP): Likewise.
(QMEMQ): Likewise.
* interp/bootlex.lisp (TRANSLABEL1): Adjust.
* interp/br-search.boot: Likewise.
* interp/br-util.boot: Likewise.
* interp/c-doc.boot: Likewise.
* interp/category.boot: Likewise.
* interp/database.boot: Likewise.
* interp/debug.lisp: Likewise.
* interp/format.boot: Likewise.
* interp/functor.boot: Likewise.
* interp/g-cndata.boot: Likewise.
* interp/g-util.boot: Likewise.
* interp/ggreater.lisp: Likewise.
* interp/guess.boot: Likewise.
* interp/i-coerfn.boot: Likewise.
* interp/i-map.boot: Likewise.
* interp/i-output.boot: Likewise.
* interp/i-resolv.boot: Likewise.
* interp/i-spec2.boot: Likewise.
* interp/i-syscmd.boot: Likewise.
* interp/interop.boot: Likewise.
* interp/i-util.boot: Likewise.
* interp/union.lisp: Likewise.
* interp/trace.boot: Likewise.
* interp/pspad2.boot: Likewise.
* interp/pathname.boot: Likewise.
* interp/nrunopt.boot: Likewise.
* interp/nrunfast.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/newfort.boot: Likewise.
* interp/msgdb.boot: Likewise.
* interp/msg.boot: Likewise.
* interp/match.boot: Likewise.
* interp/word.boot: Likewise.
|
|
|