Age | Commit message (Collapse) | Author | Files | Lines |
|
* interp/vmlisp.lisp (QSQUOTIENT): Likewise.
(QSREMAINDER): Likewise.
* interp/buildom.boot: Use quo and rem in leur of QUOTIENT and
REMAINDER or variants.
* interp/g-timer.boot: Likewise.
* interp/g-util.boot: Likewise.
* interp/htsetvar.boot: Likewise.
* interp/i-output.boot: Likewise.
* interp/incl.boot: Likewise.
* interp/msgdb.boot: Likewise.
* interp/nrungo.boot: Likewise.
* interp/pspad1.boot: Likewise.
* interp/topics.boot: Likewise.
|
|
* interp/spad.lisp (QUOTIENT2): Remove.
(REMAINDER2): Likewise.
* algebra/integer.spad.pamphlet (Integer): Use builtin %idivide.
* algebra/si.spad.pamphlet (SingleInteger): Likewise.
|
|
%irem and %iquo.
* algebra/si.spad.pamphlet (SingleInteger): Likewise.
|
|
($VMsideEffectFreeOperators): Include %irem and %iquo.
|
|
* boot/parser.boot (bpEuclid): New. Parse integer quotient and
remainder expressions.
(bpMinus): Now build on bpEuclid instead of bpTimes.
|
|
lieu of mutateToBackendCode.
|
|
* interp/c-util.boot (middleEndExpand): Temporarilty Comment out
signature.
|
|
if-expressions.
|
|
opcodes %icst0, %icst1, %when, and %ccst.
* interp/g-util.boot: Expand %ccst.
* algebra/alql.spad.pamphlet: Clean up.
* algebra/array1.spad.pamphlet: Likewise.
* algebra/c02.spad.pamphlet: Likewise.
* algebra/d03.spad.pamphlet: Likewise.
* algebra/e04.spad.pamphlet: Likewise.
* algebra/integer.spad.pamphlet: Likewise.
* algebra/si.spad.pamphlet: Likewise.
* algebra/string.spad.pamphlet: Likewise.
|
|
* interp/g-opt.boot (simplifyVMForm): Expand %icst0 and %icst1.
(optIlt): Fold more configurations.
|
|
|
|
* interp/define.boot (DomainSubstitutionFunction): Use
simplifyVMForm in lieu of optimize.
* interp/nruncomp.boot (NRTsetVector4a): Likewise.
|
|
comparison to %true.
|
|
|
|
|
|
(optCall): Handle VM macro expansions here.
|
|
(optCatch): Use it.
(optCall): Likewise.
(optSpecialCall): Likewise.
(simplifyVMForm): Handle simple cases here.
* interp/macros.lisp (RPLACW): Remove.
|
|
operand is zero.
(optIsub): Likewise.
(optImul): More simplifications if either operand is one.
|
|
* interp/nruncomp.boot (NRTsetVector4a): Tidy.
|
|
* interp/clam.boot: Likewise.
* interp/define.boot: Likewise.
* interp/format.boot: Likewise.
* interp/functor.boot: Likewise.
* interp/g-opt.boot: Likewise.
* interp/mark.boot: Likewise.
* interp/pspad1.boot: Likewise.
* interp/pspad2.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/wi1.boot: Likewise.
* interp/wi2.boot: Likewise.
* interp/sys-constants.boot: Remove $true and $false as unused.
|
|
LET-expressions.
* interp/g-opt.boot (optBind): Tidy.
|
|
initializations in %bind expressions.
* interp/g-util.boot (expandBind): The body of s %bind expression
may be a sequence of statements.
|
|
* interp/g-opt.boot (optMINUS): Remove.
(opt_-): Likewise.
(optBle): New.
(optBgt): Likewise.
(optBge): Likewise.
|
|
(opt_-): Likewise.
|
|
* algebra/sf.spad.pamphlet (DoubleFloat): Tidy.
|
|
* interp/g-opt.boot (optIeq): New.
(optIadd): Likewise.
(optIsub): Likewise.
(optImul): Likewise.
(optIneg): Likewise.
(lispize): Remove.
|
|
(optRetract): Simplify the predicate when possible.
(optNot): New transformer.
(optAnd): Likewise.
(optOr): Likewise.
(optIlt): Likewise.
(optIle): Likewise.
(optIgt): Likewise.
(optIge): Likewise.
|
|
(SystemNonNegativeInteger) [~]: Likewise.
* interp/g-util.boot: Better expansion of byte operations.
|
|
byte relation operators and bitmakst operators.
* interp/g-util.boot: Expand them.
* algebra/data.spad.pamphlet (Byte): Now satisfies Logic. Tidy.
(SystemNonNegativeInteger): Likewise.
* algebra/java.spad.pamphlet (JVMBytecode): Rename from JavaBytecode.
(JVMClassFileAccess): New.
(JVMFieldAccess): Likewise.
(JVMMethodAccess): Likewise.
(JVMConstantTag): Likewise.
(JVMOpcode): Likewise.
|
|
* interp/i-output.boot (appChar): Fix thinko.
(outformWidth): Likewise.
(WIDTH): Likewise.
|
|
* interp/g-util.boot: Expand it.
* algebra/syntax.spad.pamphlet (Identifer): Now satisfies
CoercibleTo String.
|
|
($FunctionDescriptorTail): Likewise.
(getOperationAlistFromLisplib): Likewise.
(getOplistForConstructorForm): Adjust.
* interp/br-op1.boot (getDomainOpTable): Likewise.
* interp/br-op2.boot (koOps): Likewise.
* interp/define.boot (genDomainViewList): Likewise.
* interp/i-analy.boot (namedConstant): Likewise.
* interp/i-coerce.boot (getConstantFromDomain): Likewise.
* interp/i-funsel.boot (isOpInDomain): Likewise.
(findCommonSigInDomain): Likewise.
(findUniqueOpInDomain): Likewise.
(hasSig): Likewise.
* interp/i-spec2.boot (constantInDomain?): Likewise.
* interp/trace.boot (spadTrace): Likewise.
* interp/lisplib.boot (transformOperationAlist): Simplify.
|
|
(getOperationAlistFromLisplib): Don't call it.
* interp/sys-driver.boot (initializeGlobalState): Remove kludge.
* interp/util.lisp (BUILD-INTERPSYS): Likewise.
|
|
* interp/nruncomp.boot (mapConsDB): Remove.
(catList2catPackageList): Likewise.
|
|
(setVector4Onecat): Likewise.
(setVector4part3): Likewise.
* interp/nruncomp.boot (NRTsetVector4): Likewise.
(NRTsetVector4Part2): Likewise.
(mergeAppend): Likewise.
* interp/define.boot (compDefineFunctor1): Remove assignment to
unused $lisplibCategoriesExtented.
* interp/lisplib.boot (compDefineLisplib): Likewise.
* interp/wi1.boot (compDefineLisplib): Likewise.
* interp/wi2.boot (compDefineFunctor1): Likewise.
|
|
|
|
Rewrite local worker to use explicit hash table parameter instead
of special variable.
* interp/compress.boot (minimalise): Move to sys-utility.boot.
Delete file.
* interp/nruncomp.boot (buildFunctor): Don't bother to minimalise.
|
|
* interp/info.boot (actOnInfo): Adjust.
|
|
loop was executed only once.
|
|
(recordDeclarationInSideCondition): New. Update it.
(compWhere): Call it.
* interp/define.boot ($whereDecls): Define at toplevel.
(typeDependencyPath): New.
(inferConstructorImplicitParameters): Likewise.
(compDefineFunctor1): Use it.
|
|
* interp/compiler.boot (compMacro): Handle parameterized definition.
* interp/define.boot (macroExpand): Likewise.
(macroExpandList): Move case for niladic macros to macroExpand.
* interp/g-util.boot (putMacro): New utility function.
|
|
allowed to be macro names.
|
|
(LinearBasis): Likewise.
(LinearElement): Use them.
(LinearForm): New.
|
|
(compAdd): Use it to promote base domains for inlining.
* interp/c-util.boot (lookupFunctionInstance): Foeld into
lookupDefiningFunction. Remove.
(lookupDefiningFunction): Evaluate only system domains to avoid
cycles.
|
|
* interp/compiler.boot (setqMultiple): Use it.
(compColon): Likewise.
(compRetractGuard): Likewise.
(compRecoverDomain): Likewise.
(defineMatchScrutinee): Likewise.
(compStepIterator): Likewise.
(compIterator): Likewise.
(compUnnamedMapping): Likewise.
* interp/define.boot (giveFormalParametersValues): Likewise.
* interp/wi1.boot (setqMultiple): Likewise.
* interp/wi2.boot (compIterator): Likewise.
(smallIntegerStep): Likewise.
|
|
|
|
* interp/define.boot (checkRepresentation): Don't compile the base
domain here yet.
|
|
[indexedDirectProductObject]: New.
(IndexedDirectProductAbelianMonoid): Rework implementation.
[construct]: Likewise.
|
|
|
|
(OrderedType) [max,min]: Export and provide defaults.
(OrderedSet): Simplify.
(SetCategory) [before?]: Move to BasicType.
|