Age | Commit message (Collapse) | Author | Files | Lines |
|
%isubmod, and %imulmod.
* interp/g-opt.boot: These are now builtin side-effect operators.
(optIaddmod): New optimizer. Register.
(optIsubmod): Likewise.
(optImulmod): Likewise.
* interp/sys-macros.lisp (QSADDMOD): Remove.
(QSDIFMOD): Likewise.
(QSMULMOD): Likewise.
|
|
* interp/fortcall.boot: Likewise.
* interp/i-object.boot: Likewise.
* interp/newfort.boot: Likewise.
* interp/i-analy.boot: Compare to 0 in lieu of ZEROP.
* interp/i-special.boot: Likewise.
* interp/i-syscmd.boot: Likewise.
* interp/sfsfun.boot: Likewise.
* interp/sys-driver.boot: Likewise.
* interp/macros.lisp: Directly use 1+ instead of QADD1.
* interp/preparse.lisp: Likewise.
* interp/slam.boot: Likewise.
* interp/sys-macros.lisp: Likewise.
* interp/sys-constants.boot ($BasicPredicates): Remove as unused.
* interp/vmlisp.lisp (ADD1): Remove.
(QSADD1): Likewise.
(QSSUB1): Likewise.
(QSTIMES): Likewise.
|
|
* interp/i-intern.boot: Likewise.
* interp/setvars.boot: Likewise.
* interp/i-output.boot: Use abstractChar, not EBCDIC.
* interp/i-util.boot: Likewise.
* interp/vmlisp.lisp (EBCDIC): Remove.
(CALLBELOW): Likewise.
(RE-ENABLE-INT): Likewise.
(QUOREM): Likewise.
|
|
* algebra/sex.spad.pamphlet: Use %float? instead of RNUM.
Use %integer? instead of INTP.
* interp/g-timer.boot: Use float? instead of RNUMP.
* interp/i-coerce.boot: Use fixnum? instead of SINTP or SMINTP.
* interp/i-intern.boot: Likewise.
* interp/lisp-backend.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/trace.boot: Likewise.
* interp/vmlisp.lisp: Likewise.
(INTP): Remove.
(BINTP): Likewise.
(LESSP): Likewise.
(LINTP): Likewise.
(MAKESTRING): Likewise.
(MAPELT): Likewise.
(NUMP): Likewise.
(RNUMP): Likewise.
(SINTP): Likewise.
(SMINTP): Likewise.
|
|
* interp/macros.lisp: Likewise.
* interp/parsing.lisp: Likewise.
* interp/sys-macros.lisp: Likewise.
* interp/vmlisp.lisp: Likewise.
(IDENTP): Remove.
|
|
floating point literals too. Adjust callers.
(bfLessp): Check for integer or floating pointer numbers.
* interp/vmlisp.lisp (complex?): New.
(complex): Likewise.
(realPart): Likewise.
(imagPart): Likewise.
(conjugate): Likewise.
(sqrt): Likewise.
|
|
(compWithMappingMode): Use %lambda not LAMBDA.
* interp/g-opt.boot (changeVariableDefinitionToStore): Handle %closure.
|
|
|
|
* interp/clammed.boot: Use it in lieu of GENSYMP.
* interp/debug.lisp: Likewise.
* interp/g-opt.boot: Likewise.
* interp/g-util.boot: Likewise.
* interp/i-analy.boot: Likewise.
* interp/trace.boot: Likewise.
* interp/vmlisp.lisp (GENSYMP): Remove.
|
|
SemiGroupOperation T.
|
|
(optDeltaEntry): Implement better patch for last change.
* interp/compiler.boot (compFormWithModemap): Undo last change.
|
|
resolution as appropriate.
|
|
operators as such, and local functions as such.
(freeVarUsage): Do not count external and local functions.
(extractCode): Tidy. Handle closure literals.
* interp/g-opt.boot (optCall): Optimize external calls where
possible.
%external is a side-effect free operator.
|
|
(bindingForm?): New.
(usesVariable?): Likewise.
* interp/compiler.boot (declareUnusedParameters): Use it.
* interp/g-opt.boot (inlineLocals): Likewise.
(optClosure): Likewise.
(optBind): Likewise.
* interp/define.boot (compContained): Remove.
|
|
* interp/compiler.boot (compUnnamedMapping): Fix thinko.
* interp/g-opt.boot (semiSimpleRelativeTo?): Likewise.
|
|
(compWithMappingMode): Likewise.
(compUnnamedMapping): Likewise.
(extractCode): Simplify.
* interp/g-opt.boot (optClosure): New. Register.
(semiSimpleRelativeTo?): An abstraction is always semisimple.
* interp/nruncomp.boot ($killOptimizeIfTrue): Remove.
(optDeltaEntry): Don't test for it.
|
|
extractCodeAndConstructTriple. Change Arity. Tidy. Adjust callers.
|
|
(extractCodeAndConstructTriple): Likewise.
* interp/g-opt.boot (optCall): Adjust.
|
|
|
|
(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.
|
|
* interp/spad-parser.boot (parseCategory): Accept exported properties.
(parseFormula): New.
|
|
* interp/lisp-backend.boot (expandApply): Remove.
Unregister expander.
* interp/g-opt.boot (optCall): applyFun is not longer an opcode.
Look for %apply.
* interp/compiler.boot (applyMapping): Generate ['%call,['%apply,.]]
form, not ['%apply,..] form.
(extractCodeAndConstructTriple): Tidy.
(compApplication): Likewise.
|
|
(getArgumentDesignator): Likewise.
(getToken): Use it.
* interp/parsing.lisp (GET-NUMBER-TOKEN): Remove.
* interp/bootlex.lisp (INIT-BOOT/SPAD-READER): Move to spad.lisp.
(SPAD): Likewise.
(READ-SPAD1): Likewise.
(TEST): Remove.
(GET-ARGUMENT-DESIGNATOR-TOKEN): Likewise.
|
|
from parentsOfBuiltinInstance.
* interp/buildom.boot (parentsOfBuiltinInstance): Tidy.
|
|
|
|
external name printing. Do not call ncParseFromString.
|
|
(Dioid): New. Extend OrderedAbelianMonoid and SemiRing.
* algebra/exposed.lsp.pamphlet: Expose Dioid.
|
|
|
|
Adjust callers.
* interp/database.boot (genericInstanceForm): New.
* interp/buildom.boot (parentsOfBuiltinInstance): New.
(builtinInstanceForm): Likewise.
* interp/br-data.boot (genericParentsOf): New.
(parentsOfForm): Use it,
(ancestorsRecur): Likewise.
* interp/br-con.boot (originInOrder): Use parentsOfForm.
|
|
(depthAssoc): Tidy.
(NRTmakeCategoryAlist): Tidy.
|
|
(NRTmakeCategoryAlist): Don't call NRTcatCompare. Tidy.
|
|
argument. Avoid globals. Adjust Callers.
(depthAssoc): Likewise. Adjust Caller.
(NRTmakeCategoryAlist): Remove uses of $depthAssocCache.
|
|
* interp/category.boot (Join): Handle empty argument list.
|
|
Adjust callers.
* interp/br-data.boot (getParentsForDomain): Remove.
(parentsOf): Call getParentsFor in lieu of getParentsForDomain.
(folks): Move to define.boot.
|
|
* interp/define.boot (compDefineCategory2): Likewise.
|
|
|
|
(explodeIfs): Likewise.
(getParentsForDomain): Tidy.
|
|
(explodeIfs): Likewise.
|
|
CATEGORY and SubsetCategory forms.
|
|
* interp/define.boot (mkEvalableCategoryForm): Use it. Tidy.
|
|
function expressions.
($VMsideEffectFreeOperators): Don't include %funcall.
($simpleVMoperators): Include it.
|
|
|
|
(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).
|
|
constructors.
* algebra/syntax.spad.pamphlet: Miscellaneous cleanup.
|
|
(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.
|
|
implementation.
* algebra/boolean.spad.pamphlet (KleeneTrivalentLogic): Now
satisfy Finite. Use Maybe Boolean as representation.
|
|
* interp/g-error.boot (returnToTopLevel): Tidy.
* interp/macros.lisp (applyWithOutputToString): Likewise.
|
|
|
|
|
|
final executables.
(infix?): Remove as duplicate in match.boot.
(prefix?): Likewise.
(suffix?): Likewise.
* interp/g-error.boot (returnToTopLevel): Tidy.
* interp/debug.lisp (/D-2): Use spadThrow in lieu of UNWIND.
* interp/patches.lisp (CATCHALL): Remove.
(DBRINIT): Likewise.
(TOPLEVEL): Likewise.
(TOP-LEVEL): Likewise.
(UNWIND): Likewise.
(RESUME): Likewise.
(booFind): Likewise.
|