Age | Commit message (Collapse) | Author | Files | Lines |
|
* interp/g-opt.boot (simplifyVMForm): Expand %icst0 and %icst1.
(optIlt): Fold more configurations.
|
|
|
|
operand is zero.
(optIsub): Likewise.
(optImul): More simplifications if either operand is one.
|
|
* 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.
|
|
initializations in %bind expressions.
* interp/g-util.boot (expandBind): The body of s %bind expression
may be a sequence of statements.
|
|
* 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/g-util.boot: Expand it.
* algebra/syntax.spad.pamphlet (Identifer): Now satisfies
CoercibleTo String.
|
|
|
|
(LinearBasis): Likewise.
(LinearElement): Use them.
(LinearForm): New.
|
|
|
|
* 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.
|
|
|
|
Extend BasicType.
|
|
[terms]: Rename from support.
|
|
Rework implementation.
|
|
[support]: New.
(IndexedDirectProductObject): Implement.
|
|
Add overload that takes sizes and function to compute entries.
|
|
[leftReducedSystem]: Rename from reducedSystem.
|
|
and %vlength.
* interp/g-util.boot: Expand them.
* algebra/array1.spad.pamphlet (PrimitiveArray): Use them.
(IndexedOneDimensionalArray): Likewise.
|
|
|
|
BasicType if element type satisfies it.
|
|
(String): Adjust.
|
|
* interp/g-opt.boot ($VMsideEffectFreeOperators): Include %f2s.
* algebra/string.spad.pamphlet (StringCategory) [string]: Add
overload DoubleFloat -> %.
(String): Define it.
|
|
* interp/mark.boot (compString): Likewise.
* algebra/string.spad.pamphlet (StringCategory): Remove obsolete
comments. Remove redundant SetCategory extension.
|
|
* interp/g-util.boot: Expand it.
* algebra/aggcat.spad.pamphlet: Cleanup.
* algebra/any.spad.pamphlet: Likewise.
* algebra/boolean.spad.pamphlet: Likewise.
* algebra/data.spad.pamphlet: Likewise.
* algebra/domain.spad.pamphlet: Likewise.
* algebra/files.spad.pamphlet: Likewise.
* algebra/laurent.spad.pamphlet: Likewise.
* algebra/list.spad.pamphlet: Likewise.
* algebra/mappkg.spad.pamphlet: Likewise.
* algebra/ore.spad.pamphlet: Likewise.
* algebra/padic.spad.pamphlet: Likewise.
* algebra/pattern.spad.pamphlet: Likewise.
* algebra/sex.spad.pamphlet: Likewise.
* algebra/stream.spad.pamphlet: Likewise.
* algebra/string.spad.pamphlet: Likewise.
* algebra/syntax.spad.pamphlet: Likewise.
* algebra/table.spad.pamphlet: Likewise.
|
|
forwarding function if possible.
|
|
* algebra/polycat.spad.pamphlet: Likewise.
* algebra/sregset.spad.pamphlet: Likewise.
|
|
Include Maybe.
|
|
domain modemap references here.
* interp/g-opt.boot ($VMsideEffectFreeOperators): Include more
floating point operators.
($simpleVMoperators): Move FUNCALL here.
(isVMConstantForm): Tidy.
* interp/g-util.boot: Expand more floating point insns.
* interp/c-util.boot (replaceSimpleFunctions): Replace more
constants.
* algebra/integer.spad.pamphlet (Integer): More cleanup. Use
builtin functions.
* algebra/sf.spad.pamphlet: Likewise.
|
|
appropriate.
* interp/g-opt.boot (jumpToToplevel?): New.
(singleAssignment?): Likewise.
(groupVariableDefinitions): Likewise. Use them.
(optimizeFunctionDef): Group toplevel variable definitions into
a bind expression.
* interp/g-util.boot (expandBind): Tidy.
* interp/c-util.boot (transformToBackendCode): Refrain from
enclosing let-expressions in SEQ if not needed.
|
|
if generated is malformed or contains serious warnings.
* algebra/pfo.spad.pamphlet (PointsOfFiniteOrder) [cmult]: Merge
local conditional definitions.
* algebra/permgrps.spad.pamphlet (PermutationGroup) [cosetRep]:
Don't forget to return a value.
* algebra/newpoly.spad.pamphlet (RecursivePolynomialCategory)
[exactQuo]: Merge conditional local definitions.
[ZToR]: Inline at sole use point. Remove conditional definitions.
[QToR]: Likewise.
[PZToPR]: Likewise.
[PQToPR]: Likewise.
* algebra/naalgc.spad.pamphlet (FramedNonAssociativeAlgebra)
[leftRankPolynomial]: Initialize local variable xx.
(rightRankPolynomial): Likewise.
* algebra/multsqfr.spad.pamphlet (MultivariateSquareFree)
[intChoose]: Error if no solution is found in the loop.
* algebra/mts.spad.pamphlet (SparseMultivariateTaylorSeries): Tidy.
[stream] Remove duplicate definition.
* algebra/d01routine.spad.pamphlet (d01anfAnnaType) [measure]: Tidy.
(d01asfAnnaType) [measure]: Likewise.
* algebra/d01transform.spad.pamphlet (d01TransformFunctionType)
[measure]: Likewise.
* algebra/forttyp.spad.pamphlet (FortranScalarType) [coerce]: Likewise.
|
|
[listYoungTableaus]: Fix thinko. Don't use lattice in its own
initialization.
|
|
|
|
[listYoungTableaus]: Fix thinko. Don't use lattice in its own
initialization before it is defined.
|
|
(optimizeFunctionDef): Use it.
|
|
(compRepeatOrCollect): Use it to generate appropriate %loop forms.
Bind new special variable $mayHaveFreeIteratorVariables.
(complainIfShadowing): Set it as appropriate.
|
|
* interp/c-util.boot (isLispSpecialVariable): Tidy.
(transformToBackendCode): Likewise.
|