Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
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.
|
|
(optimizeFunctionDef): Use it.
|
|
(compRepeatOrCollect): Use it to generate appropriate %loop forms.
Bind new special variable $mayHaveFreeIteratorVariables.
(complainIfShadowing): Set it as appropriate.
|
|
(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.
|
|
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.
|
|
SETQ by LETT.
|
|
* 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.
|
|
* 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.
|
|
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.
|
|
(transformToBackendCode): Use it.
|
|
* interp/parse.boot (parseGreaterEqual): Likewise.
|
|
* algebra/clifford.spad.pamphlet: Likewise.
* algebra/complet.spad.pamphlet: Likewise.
* algebra/contfrac.spad.pamphlet: Likewise.
* algebra/curve.spad.pamphlet: Likewise.
* algebra/ddfact.spad.pamphlet: Likewise.
* algebra/derham.spad.pamphlet: Likewise.
* algebra/equation2.spad.pamphlet: Likewise.
* algebra/ffcat.spad.pamphlet: Likewise.
* algebra/ffcg.spad.pamphlet: Likewise.
* algebra/fff.spad.pamphlet: Likewise.
* algebra/ffnb.spad.pamphlet: Likewise.
* algebra/ffp.spad.pamphlet: Likewise.
* algebra/ffpoly.spad.pamphlet: Likewise.
* algebra/ffx.spad.pamphlet: Likewise.
* algebra/fmod.spad.pamphlet: Likewise.
* algebra/fortmac.spad.pamphlet: Likewise.
* algebra/fr.spad.pamphlet: Likewise.
* algebra/fraction.spad.pamphlet: Likewise.
* algebra/fspace.spad.pamphlet: Likewise.
* algebra/gaussian.spad.pamphlet: Likewise.
* algebra/gpol.spad.pamphlet: Likewise.
* algebra/intclos.spad.pamphlet: Likewise.
* algebra/interval.spad.pamphlet: Likewise.
* algebra/laurent.spad.pamphlet: Likewise.
* algebra/matrix.spad.pamphlet: Likewise.
* algebra/modring.spad.pamphlet: Likewise.
* algebra/oct.spad.pamphlet: Likewise.
* algebra/opalg.spad.pamphlet: Likewise.
* algebra/padic.spad.pamphlet: Likewise.
* algebra/perman.spad.pamphlet: Likewise.
* algebra/pf.spad.pamphlet: Likewise.
* algebra/pfr.spad.pamphlet: Likewise.
* algebra/poly.spad.pamphlet: Likewise.
* algebra/polycat.spad.pamphlet: Likewise.
* algebra/puiseux.spad.pamphlet: Likewise.
* algebra/quat.spad.pamphlet: Likewise.
* algebra/radix.spad.pamphlet: Likewise.
* algebra/reclos.spad.pamphlet: Likewise.
* algebra/resring.spad.pamphlet: Likewise.
* algebra/sf.spad.pamphlet: Likewise.
* algebra/si.spad.pamphlet: Likewise.
* algebra/solvefor.spad.pamphlet: Likewise.
* algebra/sups.spad.pamphlet: Likewise.
* algebra/taylor.spad.pamphlet: Likewise.
* algebra/vector.spad.pamphlet: Likewise.
* algebra/xpoly.spad.pamphlet: Likewise.
|
|
(getInverseEnvironment): Likewise.
(compLogicalNot): Don't normalize to if-statement.
|
|
|
|
* interp/g-util.boot (isSubDomain): Tidy.
* interp/g-opt.boot (isVMConstantForm): New.
(findVMFreeVars): Likewise.
* interp/define.boot (insertViewMorphisms): Remove.
(emitSubdomainInfo): New.
(checkVariableName): Likewise.
(checkParameterNames): Likewise.
(checkRepresentation): Set $subdomain where appropriate.
(compDefines): Check parameter names.
(compDefineFunctor1): Propagate subdomain info.
(doIt): Don't call insertViewMorphisms.
* interp/compiler.boot (setqSingle): Check variable name.
(compIterator): Likewise.
(commonSuperType): New.
(satisfies): Likewise.
(coerceSubset): Use them to implemen cross-subdomain coercion.
(coerceSuperset): New.
(comCoerce1): Use it.
(compPer): New.
(compRep): Likewise.
* interp/c-util.boot (getRepresentation): New.
(proclaimCapsuleFunction): Improve for specialized subdomains.
* algebra/stream.spad.pamphlet: Don't use `per' as variable name.
* algebra/si.spad.pamphlet (size$SingleInteger): Tidy.
(coerce$SingleInteger): Likewise.
* algebra/reclos.spad.pamphlet (nonNull$RealClosure): Don't use
`rep' as parameter name.
* algebra/data.spad.pamphlet (Byte): Now a subdomain of
NonNegativeInteger. Tidy.
|
|
Tidy compApplyModemap.
r12460@gauss: gdr | 2008-12-13 09:24:50 -0600
Tidy compMapCond.
r12461@gauss: gdr | 2008-12-13 10:24:14 -0600
Activate compViableModemap.
r12462@gauss: gdr | 2008-12-13 11:18:17 -0600
Remove pmatch and pmatchWithSl out of main compiler.
r12463@gauss: gdr | 2008-12-13 12:26:44 -0600
Tidy compApplyModemap.
r12464@gauss: gdr | 2008-12-13 16:39:28 -0600
Add compExclusiveOr.
r12465@gauss: gdr | 2008-12-13 16:54:58 -0600
.
r12466@gauss: gdr | 2008-12-14 15:01:33 -0600
Tidy compLogicalNot.
|
|
(ConvertibleFrom): Likewise.
(RetractableTo): Use it.
* algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include
KRCFROM and KVTFROM.
* share/algebra/: Update databases.
|
|
|
|
* algebra/strap: Update cached Lisp translation.
|
|
algebra bootstrap domains here.
|