Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
($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.
|
|
|
|
(conjunction$PropositionalFormula): New exported function.
(disjunction$PropositionalFormula): Likewise.
|
|
Reimplement in terms of kernels.
* algebra/Makefile.pamphlet ($(OUT)/KERNEL.$(FASLEXT)): New
dependence rule.
($(OUT)PROPFRML.$(FASLEXT)): Likewise.
(axiom_algebra_layer_19): Move PROPFRML to...
(axiom_algebra_layer_6): ...here.
|
|
Include Void.
* algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include VOID.
(axiom_algebra_layer_14): Loose it.
|
|
* 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.
|
|
(revert$StreamTaylorSeriesOperations): Tidy.
|
|
in CLisp-2.48.
|
|
|
|
|
|
(SpadAstExports): Add case for StepAst.
(SpadAst): Implement.
|
|
* algebra/syntax.spad.pamphlet (ParameterAst): New.
(HeadAst): Use it.
* testsuite/interpreter/sf-2893009.input: Likewise.
* testsuite/interpreter/sf-2893009.spad: New.
|
|
(SegmentBinding): Tidy.
* algebra/exposed.lsp.pamphlet (RangeBinding): Expose.
* algebra/Makefile.pamphlet (axiom_algebra_layer_19): Include
RNGBIND.
|
|
BiModule(Coef,Coef). Remove duplicate exports. Use rep and per
operators.
|
|
|
|
|
|
* algebra/tex.spad.pamphlet: Update special function list.
|
|
|
|
OrderedMonoid.
|
|
(FreeModule): Use it.
* algebra/xpoly.spad.pamphlet (OrderedFreeMonoid): Likewise.
|
|
|
|
* algebra/integer.spad.pamphlet (Integer): Likewise.
* algebra/si.spad.pamphlet (IntegerNumberSystem): Likewise.
|
|
(index$Byte): Likewise.
(lookup$Byte): Likewise.
(random$Byte): Likewise.
|
|
|
|
* interp/compiler.boot (getBasicFFIType): SystemPointer is an FFI type.
* algebra/data.spad.pamphlet (SystemPointer): New.
* algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include SYSPTR.
|
|
* interp/compiler.boot (getBasicFFIType): Handle 64-bit integer types.
|
|
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/fnewmeta.lisp (PARSE-Jump): New.
* interp/compiler.boot (compAtom): Dipatch compilation of "break"
and "iterate" to...
(compBreak): ... here
(compIterate): and here.
(jumpFromLoop): New.
(compRepeatOrCollect): Initialize $lookKind, $iterateCount, and
$breakCount. Set exit point for loop bodies with 'iterate'
expressions.
* interp/parse.boot (parseAtom): Remove.
(parseTran): Adjust.
* algebra/outform.spad.pamphlet: Tidy.
* interp/c-util.boot ($loopKind): Declare.
($repeatBodyLabel): Likewise.
($iterateCount): Likewise.
($breakCount): Likewise.
|
|
(mkDefun$MakeFloatCompiledFunction): Tidy.
* interp/c-util.boot (declareUnusedParameters): New.
* interp/i-map.boot: Use it.
* interp/i-spec1.boot: Likewise.
* interp/slam.boot: Likewise.
* lib/cfuns-c.c (writeablep): Document MinGW/MSYS bug work around.
|
|
* algebra/mkfunc.spad.pamphlet:
|
|
* interp/g-util.boot (homogeneousListToVector): New.
* interp/g-opt.boot (optCollectVector): Use it.
|
|
bogus times! function.
|
|
matter our of void.
* algebra/indexedp.spad.pamphlet
(IndexedDirectProductAbelianMonoid): Tidy.
(IndexedDirectProductAbelianGroup): Likewise.
* src/algebra/poly.spad.pamphlet (PolynomialRing): Fix thinko.
|
|
|
|
(transformToBackendCode): Use it.
|
|
(COLLECTVEC): Likewise.
* interp/compiler.boot (compRepeatOrCollect): Tidy.
|
|
SETELT.
|
|
(SourceLevelSubsume): Remove.
(SourceLevelSubset): Likewise.
* interp/sys-globals.boot: Likewise.
* interp/define.boot: Tidy.
* interp/functor.boot: Likewise.
* interp/info.boot: Likewise.
* algebra/si.spad.pamphlet: Don't set $noSubsets.
* algebra/fortpak.spad.pamphlet: Don't set $noSubsumption.
* algebra/fortran.spad.pamphlet: Likewise.
* algebra/gdirprod.spad.pamphlet: Likewise.
* algebra/mkfunc.spad.pamphlet: Likewise.
* algebra/oct.spad.pamphlet: Likewise.
* algebra/vector.spad.pamphlet: Likewise.
|
|
parameterized by the constructor category.
|
|
* interp/fnewmeta.lisp (PARSE-Sexpr1): Disable negative integers
in data. A facility not actually used in Spad code.
|
|
showTypeInOutput. Tidy.
* algebra/fortran.spad.pamphlet: Coerce Any objects to Output;
don't use objectOf.
|
|
* interp/compiler.boot (compRecoverDomain): New. Split from
compRecoverGuard.
(compRecoverGuard): Split. Handle existential type recovery.
(compScheme): New. Register as compiler.
* interp/g-opt.boot (optLET*): New. Turn into LET-form if
appropriate. Register as backend transformer.
* interp/fnewmeta.lisp (|PARSE-Scheme|): New.
(|PARSE-Quantifier|): Likewise.
(|PARSE-QuantifiedVariableList|): Likewise.
(|PARSE-QuantifiedVariable|): Likewise.
* interp/metalex.lisp (KEYWORDS): Add 'forall' and 'exist' as new
keywords.
* interp/newaux.lisp: Register parser for expression schemes.
* algebra/any.spad.pamphlet (=$Any): If the underlying domain has
BasicType, use that equality operator.
(coerce$Any): If the underlying domain has CoercibleTo OutputForm
then use it.
|
|
shenanigans. Use is-case pattern matching.
* interp/g-opt.boot (varIsAssigned): New.
(canInlineVarDefinition): New.
(optLET): Use it to inline functionally used local variables.
Register as backend optimizer.
|
|
|