Age | Commit message (Collapse) | Author | Files | Lines |
|
disjunction forms.
|
|
constant producing function.
* interp/c-util.boot (getFunctionReplacement): Use
comptileTimeBindingOf.
(lookupDefiningFunction): Tidy.
* interp/g-opt.boot (compileTimeBindingOf): Move to c-util.boot.
|
|
evaluation.
|
|
(optCond): Remove ineffectual transformation.
|
|
|
|
|
|
* boot/ast.boot: Use makeSymbol in place of INTERN.
* boot/parser.boot: Likewise.
* boot/scanner.boot: Likewise.
* boot/translator.boot: Likewise.
* interp/alql.boot: Likewise.
* interp/as.boot: Likewise.
* interp/ax.boot: Likewise.
* interp/bc-matrix.boot: Likewise.
* interp/bc-solve.boot: Likewise.
* interp/br-con.boot: Likewise.
* interp/br-data.boot: Likewise.
* interp/br-op2.boot: Likewise.
* interp/br-prof.boot: Likewise.
* interp/br-search.boot: Likewise.
* interp/c-doc.boot: Likewise.
* interp/c-util.boot: Likewise.
* interp/clam.boot: Likewise.
* interp/compiler.boot: Likewise.
* interp/define.boot: Likewise.
* interp/format.boot: Likewise.
* interp/fortcall.boot: Likewise.
* interp/i-syscmd.boot: Likewise.
* interp/i-spec1.boot: Likewise.
* interp/i-output.boot: Likewise.
* interp/i-coerce.boot: Likewise.
* interp/i-map.boot: Likewise.
* interp/htsetvar.boot: Likewise.
* interp/ht-util.boot: Likewise.
* interp/g-util.boot: Likewise.
* interp/functor.boot: Likewise.
* interp/pspad1.boot: Likewise.
* interp/pspad2.boot: Likewise.
* interp/postpar.boot: Likewise.
* interp/pf2sex.boot: Likewise.
* interp/parse.boot: Likewise.
* interp/packtran.boot: Likewise.
* interp/nrunopt.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/newfort.boot: Likewise.
* interp/msgdb.boot: Likewise.
* interp/modemap.boot: Likewise.
* interp/mark.boot: Likewise.
* interp/intfile.boot: Likewise.
* interp/interop.boot: Likewise.
* interp/incl.boot: Likewise.
* interp/word.boot: Likewise.
* interp/wi2.boot: Likewise.
* interp/wi1.boot: Likewise.
* interp/trace.boot: Likewise.
* interp/topics.boot: Likewise.
* interp/sys-constants.boot: Likewise.
* interp/showimp.boot: Likewise.
* interp/scan.boot: Likewise.
|
|
* 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.
|
|
* algebra/formula.spad.pamphlet: Avoid Lispisms.
* algebra/mathml.spad.pamphlet: Likewise.
* algebra/op.spad.pamphlet: Likewise.
* algebra/sex.spad.pamphlet: Likewise.
|
|
* interp/wi1.boot: Likewise.
* interp/br-data.boot: Various cleanups.
* interp/c-util.boot: Likewise.
* interp/compiler.boot: Likewise.
* interp/functor.boot: Likewise.
* interp/g-util.boot: Likewise.
* interp/guess.boot: Likewise.
* interp/i-util.boot: Likewise.
* interp/mark.boot: Likewise.
* interp/msgdb.boot: Likewise.
* interp/topics.boot: Likewise.
|
|
nested conditionals.
|
|
conditionals so that implications propagate down the pipe.
|
|
autoCoerceByModemap fails.
|
|
(isUnionMode): Move to c-util.boot.
(coerceExtraHard): Rework.
(belongsTo?): Remove.
* interp/c-util.boot (isUnionMode): Moved from compiler.boot.
(unionLike?): New.
(unionProperty): Likewise.
(getInverseEnvironment): Use unionProperty instead of getUnionMode.
|
|
temporaries designating result of assignment.
(getInverseEnvironment): Likewise.
|
|
'case' implementation to declared signature.
(mkUnionFunList): Likewise.
* interp/compiler.boot (compCase1): 'case' is now unconditionally
binary.
* interp/g-opt.boot (optCond): Fix thinko.
|
|
possible.
* interp/g-util.boot (assumeProperty): Remove.
(flattenVMForm): Likewise.
(mkVMForm): Likewise.
|
|
(setqSingle): Likewise.
(setqMultiple): Likewise.
(compConstruct): Likewise.
(compQuote): Likewise.
(compElt): Likewise.
(compSignatureImport): Likewise.
(compComma): Likewise.
|
|
(compForm1): Don't call it.
|
|
|
|
(canInlineVarDefinition): Use it to safely inline vardefs.
|
|
* interp/g-opt.boot (optLET*): Remove as we now generate only
%bind forms.
|
|
and %nothing.
* algebra/mkfunc.spad.pamphlet: Use %funcall instead of FUNCALL.
|
|
* interp/scan.boot (scanInserts): Use vectorRef.
* interp/functor.boot (DescendCode): Don't check for SETELT or
QSETREFV forms.
* interp/nrunfast.boot (evalSlotDomain): Likewise.
|
|
* interp/nrungo.boot (NRTevalDomain): Likewise. Fix callers to call
evalDomain.
* interp/i-eval.boot (evalDomain): Don't check for $evalDomain
anymore. Handle assignment to domain object forms.
|
|
* 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.
|
|
* interp/category.boot (mkCategory): Drop test for primitive
domains.
|
|
instantiations in determining NewLocals.
|
|
* interp/c-util.boot: Adjust use.
* interp/functor.boot: Likewise.
* interp/modemap.boot: Likewise.
|
|
domains, as the comment at the top of the file says.
|
|
* interp/compiler.boot (compMatch): test for identifier, not
atomic value.
* algebra/syntax.spad.pamphlet (Syntax): Tidy.
|
|
|
|
representation, not extended domain (default search does not
work for the non-extending categories.)
|
|
of conditional too.
|
|
(simplifySEQ): Use it.
|
|
(sideEffectFree?): New.
(varIsAssigned): Tidy.
(canInlineVarDefinition): Likewise.
* interp/boot-pkg.lisp (gensym?): New.
* interp/c-util.boot ($NonExpandableOperators): New.
(expandableDefinition?): Use it.
* algebra/sf.spad.pamphlet (DoubleFloat): Use %fmanexp.
|
|
hyperbolic functions.
* interp/lisp-backend.boot: Expand them.
* algebra/sf.spad.pamphlet: Use them.
|
|
and GGREATERP. Add VM-level complex number operators.
* interp/lisp-backend.boot: Expand them.
* algebra/gaussian.spad.pamphlet (ComplexCategory): Use VM form
instead of Lisp level forms.
* algebra/pfr.spad.pamphlet (PartialFraction): Likewise.
* algebra/si.spad.pamphlet (SingleInteger): Likewise.
* algebra/symbol.spad.pamphlet (Symbol): Likewise.
|
|
level operators. Include %property and %bitveclt.
* interp/lisp-backend.boot: Expand them.
* algebra/si.spad.pamphlet (SingleInteger): Tidy. Use %ismall?.
* algebra/domain.spad.pamphlet (DomainConstructo): Use %property.
* algebra/outform.spad.pamphlet (OutputForm): Likewise.
* algebra/boolean.spad.pamphlet (IndexedBits): Use %bitveclt.
|
|
Rename from mutateCONDFormWithUnaryFunction. Update callers
(mutateBindingFormWithUnaryFunction): Rename from
mutateLETFormWithUnaryFunction. Allow %bind form too.
Update callers.
|
|
to Rep. Rework local function definitions.
|
|
Use %otherwise instead of %true where appropriate.
* interp/define.boot: Likewise.
* interp/functor.boot: Likewise.
* interp/g-opt.boot: Likewise.
* interp/i-code.boot: Likewise.
* interp/i-output.boot: Likewise.
* interp/i-spec1.boot: Likewise.
* interp/i-spec2.boot: Likewise.
* interp/i-util.boot: Likewise.
* interp/info.boot: Likewise.
* interp/modemap.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/pspad1.boot: Likewise.
* interp/pspad2.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/wi1.boot: Likewise.
* interp/wi2.boot: Likewise.
* interp/compiler.boot (canReturn): Don't test for COND anymore.
|
|
not %true for default cases.
(reportFunctionCacheAll): Likewise.
(compileRecurrenceRelation): Likewise.
* interp/lisp-backend.boot (expandTry): Tidy.
* interp/g-opt.boot ($VMsideEffectFreeOperators): Include %otherwise.
* interp/compiler.boot (compAlternativeGuard): Emit %otherwise
form, not Lisp level T form.
* interp/clam.boot (compClam): Tidy.
(compHash): Likewise.
(compHashGlobal): Likewise.
|
|
generate Lisp code directly.
(canReturn): Don't look into CLOSEDFN forms.
|
|
* interp/slam.boot: Likewise.
|
|
backend module.
* interp/Makefile.in (OBJS): Include it.
(lisp-backend.$(FASLEXT)): New rule.
|
|
* algebra/lie.spad.pamphlet (AssociatedLieAlgebra): Likewise.
(AssociatedJordanAlgebra): Likewise.
(LieSquareMatrix): Likewise.
|
|
non-extension.
|
|
|
|
(optSpeciallCall): Likeise.
(optCall): Adjust.
(optCallEval): Move to wi2.boot, sole user.
|