Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
[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.
|
|
extends DifferentialSpaceExtension.
|
|
|
|
DifferentialSpace.
|
|
|
|
(UnivariateLaurentSeriesConstructor) [termsToOutputForm]: Tidy.
* algebra/mts.spad.pamphlet (SparseMultivariateTaylorSeries)
[coerce]: Likewise.
* algebra/padic.spad.pamphlet (PAdicIntegerCategory) [coerce]:
Likewise.
* algebra/pscat.spad.pamphlet
(UnivariateTaylorSeriesCategory)[coerce]: Likewise.
* algebra/puiseux.spad.pamphlet (UnivariatePuiseuxSeries)
[termsToOutputForm]: Likewise.
|
|
non-simple case.
|
|
(compMatchAlternative): Generate %bind form.
(compMatch): Likewise.
(compReduce1): Rewrite.
(getIdentity): Tidy.
* interp/g-opt.boot (changeThrowToExit): HAndle %reduce.
(varIsAssigned): %store is side-effectful.
* interp/g-util.boot (expandReduce): New. Expand %reduce forms.
* interp/i-map.boot (getUserIdentifiersIn): Handle %reduce.
(findLocalVars1): Likewise.
* interp/i-spec1.boot (checkForFreeVariables): Likewise.
|
|
predicate iterators. There is exactly one instance in the entire
OpenAxio library.
* interp/g-util.boot (expandIN): Take one more parameter to
determine early binding.
(expandIterators): Determine if wider scope is needed for iterator
variables.
|
|
(mutateToBackendCode): Use it to record special vars.
Be careful with locally bound variables.
|
|
SETQ by LETT.
|
|
(transformToBackendCode): Use it. Don't add unneeded PROG/RETURN.
|
|
comprehension to %collect form.
|
|
|
|
|
|
|
|
|
|
|
|
* interp/g-util.boot (expandToVMForm): Likewise.
(expandStore): Refine store to pair components.
* algebra/any.spad.pamphlet (Scope): Use builtin operators.
(Environment): Likewise.
* algebra/domain.spad.pamphlet (FunctionDescriptor): Likewise.
(ConstructorCall): Likewise.
(FunctorData): Likewise.
(OperatorSignature): Likewise.
(Category): Likewise.
(Domain): Likewise.
* algebra/integer.spad.pamphlet (Integer): Likewise.
(NonNegativeInteger): Likewise.
* algebra/outform.spad.pamphlet: Likewise.
* algebra/si.spad.pamphlet (SingleInteger): Likewise.
* algebra/syntax.spad.pamphlet (Syntax): Likewise.
|
|
Lisp. Use builtin functions.
|
|
* interp/c-util.boot (isAtomicForm): Move to g-util.boot.
* interp/g-opt.boot (optSEQ): Splice toplevel PROGN forms.
* interp/g-util.boot (isAtomicForm): Move from c-util.boot. Export.
|
|
readable Lisp code.
|
|
* interp/nruncomp.boot (washFunctorBody): New.
(buildFunctor): Use it.
* interp/g-opt.boot (optBind): New.
(optLIST): Likewise.
|
|
(|check-union|): Likewise.
* interp/compiler.boot (coerceSuperset): Tidy. Generate %Retract
instruction.
* interp/g-opt.boot (optRetract): New.
|
|
|
|
(compIntegerValue): Likewise.
(compStepIterator): Likewise.
(compIterate): Use it.
|
|
(PropositionalLogic): Extend it.
* algebra/aggcat.spad.pamphlet (BitAggregate): Likewise.
* algebra/si.spad.pamphlet (SingleInteger): Assert membership to
BooleanLogic.
|
|
($simpleVMoperators): Augment it.
(semiSimpleRelativeTo?): New.
(isSimpleVMForm): Use it.
* interp/c-util.boot (forwardingCall?): New.
(usesVariablesLinearly?): Likewise.
(expandableDefinition?): Likewise.
(foldSpadcall): Tidy.
(foldExportedFunctionReferences): If a function is discovered to
be expandable, make it so.
* interp/define.boot (spadCompileOrSetq): Tidy.
|
|
* interp/sys-driver.boot (initializeGlobalState): Sey domain
representation inlining if requested.
* interp/c-util.boot (setCompilerOptimizations): Set domain
representation inlining if at optimization level 3.
* algebra/constant.spad.pamphlet (AlgebraicNumber): Remove
assignment to Rep. Tidy.
* algebra/Makefile.pamphlet: Add dependencies.
|
|
|
|
* algebra/algext.spad.pamphlet: Likewise.
* algebra/catdef.spad.pamphlet: Likewise.
* algebra/curve.spad.pamphlet: Likewise.
* algebra/d01agents.spad.pamphlet: Likewise.
* algebra/d02agents.spad.pamphlet: Likewise.
* algebra/ffcg.spad.pamphlet: Likewise.
* algebra/ffhom.spad.pamphlet: Likewise.
* algebra/ffnb.spad.pamphlet: Likewise.
* algebra/ffp.spad.pamphlet: Likewise.
* algebra/formula.spad.pamphlet: Likewise.
* algebra/fortmac.spad.pamphlet: Likewise.
* algebra/fortpak.spad.pamphlet: Likewise.
* algebra/fortran.spad.pamphlet: Likewise.
* algebra/forttyp.spad.pamphlet: Likewise.
* algebra/generic.spad.pamphlet: Likewise.
* algebra/kl.spad.pamphlet: Likewise.
* algebra/mathml.spad.pamphlet: Likewise.
* algebra/newdata.spad.pamphlet: Likewise.
* algebra/out.spad.pamphlet: Likewise.
* algebra/permgrps.spad.pamphlet: Likewise.
* algebra/pfo.spad.pamphlet: Likewise.
* algebra/regset.spad.pamphlet: Likewise.
* algebra/routines.spad.pamphlet: Likewise.
* algebra/setorder.spad.pamphlet: Likewise.
* algebra/sups.spad.pamphlet: Likewise.
* algebra/symbol.spad.pamphlet: Likewise.
* algebra/tex.spad.pamphlet: Likewise.
|
|
functions used as constants.
* algebra/aggcat.spad.pamphlet (IndexedAggregate): Add parenthesis
for call to niladic function 'void'.
* algebra/algext.spad.pamphlet (SimpleAlgebraicExtension): Likewise.
* algebra/curve.spad.pamphlet (RadicalFunctionField): Likewise.
(AlgebraicFunctionField): Likewise.
* algebra/permgrps.spad.pamphlet (PermutationGroup): Likewise.
* algebra/pfo.spad.pamphlet (FunctionSpaceReduce): Likewise.
* algebra/setorder.spad.pamphlet: Likewise.
* algebra/ffcat.spad.pamphlet (FiniteFieldCategory): Add
parenthesis for call to niladic function 'representationType'.
* algebra/ffnb.spad.pamphlet
(FiniteFieldNormalBasisExtensionByPolynomial): Likewise for
normalElement.
* algebra/float.spad.pamphlet (Float): Likewise for OMencodingXML,
pi, log2, log10, digits.
* algebra/fnla.spad.pamphlet (FreeNilpotentLie): Likewise for
dimension.
* algebra/fraction.spad.pamphlet (Fraction): Likewise for
OMencodingXML.
* algebra/gaussian.spad.pamphlet (Complex): Likewise.
* algebra/integer.spad.pamphlet (Integer): Likewise.
* algebra/list.spad.pamphlet (List): Likewise.
* algebra/sf.spad.pamphlet (DoubleFloat): Likewise.
* algebra/si.spad.pamphlet (SingleInteger): Likewise.
* algebra/string.spad.pamphlet (String): Likewise.
* algebra/symbol.spad.pamphlet (Symbol): Likewise.
* algebra/intrf.spad.pamphlet (TranscendentalIntegration):
Likewise for empty.
* algebra/kl.spad.pamphlet (SortedCache): Likewise for cache, void.
* algebra/newdata.spad.pamphlet (TabulatedComputationPackage):
Likewise for usingTable?.
* algebra/omserver.spad.pamphlet (OpenMathServerPackage): Likewise
for OMencodingUnknown.
* algebra/plot.spad.pamphlet (Plot): Likewise for adaptive?.
* algebra/plot3d.spad.pamphlet (Plot3D): Likewise for adaptive3D?.
|
|
(transImplementation): Remove.
|
|
in CLisp-2.48.
|
|
|
|
(index$Byte): Likewise.
(lookup$Byte): Likewise.
(random$Byte): Likewise.
|
|
when it is already reduced.
|
|
* interp/compiler.boot (compElt): Fix thinko, one more time.
* interp/nruncomp.boot (optDeltaEntry): Don't overquote VM forms
for constants.
* algebra/algext.spad.pamphlet: Call niladic functions with empty
argument lists.
* algebra/ddfact.spad.pamphlet: Likewise.
* algebra/gpgcd.spad.pamphlet: Likewise.
* algebra/modmon.spad.pamphlet: Likewise.
* algebra/pf.spad.pamphlet: Likewise.
* algebra/polycat.spad.pamphlet: Likewise.
* algebra/twofact.spad.pamphlet: Likewise.
* algebra/list.spad.pamphlet: "nil" is now a ocnstant.
* algebra/string.spad.pamphlet: "space", "quote", "escape" are now
constants.
|
|
* interp/g-util.boot (homogeneousListToVector): New.
* interp/g-opt.boot (optCollectVector): Use it.
|
|
(transformToBackendCode): Use it.
|
|
(COLLECTVEC): Likewise.
* interp/compiler.boot (compRepeatOrCollect): Tidy.
|
|
SETELT.
|
|
* interp/fnewmeta.lisp (PARSE-Sexpr1): Disable negative integers
in data. A facility not actually used in Spad code.
|
|
* algebra/d01weights.spad.pamphlet: Adjust.
* algebra/fs2expxp.spad.pamphlet: Likewise.
* algebra/fs2ups.spad.pamphlet: Likewise.
* algebra/fspace.spad.pamphlet: Likewise.
* algebra/limitps.spad.pamphlet: Likewise.
* algebra/transsolve.spad.pamphlet: Likewise.
|
|
* interp/parse.boot (parseGreaterEqual): Likewise.
|
|
greater-than expressions.
* interp/parse.boot (parseGreaterThan): Remove.
* algebra/data.spad.pamphlet (Byte): Implement all comparison
functions.
* algebra/integer.spad.pamphlet (Integer): Likewise.
* algebra/sf.spad.pamphlet (DoubleFloat): Likewise.
* algebra/si.spad.pamphlet (SingleInteger): Likewise.
* algebra/string.spad.pamphlet (Character): Likewise.
|