Age | Commit message (Collapse) | Author | Files | Lines |
|
matter our of void.
* algebra/indexedp.spad.pamphlet
(IndexedDirectProductAbelianMonoid): Tidy.
(IndexedDirectProductAbelianGroup): Likewise.
* src/algebra/poly.spad.pamphlet (PolynomialRing): Fix thinko.
|
|
|
|
overreading on floating point contagion warning.
|
|
* interp/compiler.boot: Don't register compiler for COLLECTV forms.
(compReduce1): Don't test for COLLECTV.
(localReferenceIfThere): New.
(compRepeatOrCollect): Use it. Tidy.
(compCollectV): Remove.
(compIteratorV): Likewise.
(computeMaxIndex): Likewise.
(exprDifference): Likewise.
* interp/g-opt.boot (optCollectVector): New. Register as
back end tranformer.
* interp/sys-macros.lisp (COLLECTV): Remove.
|
|
(transformToBackendCode): Use it.
|
|
(COLLECTVEC): Likewise.
* interp/compiler.boot (compRepeatOrCollect): Tidy.
|
|
* configure.ac.pamphlet: Support --enable-profiling.
* config/var-def.mk (oa_yesno_to_lisp_boolean): New.
(oa_enable_profiling): Likewise.
(oa_enable_lisp_profiling): Likewise.
src/
* lisp/Makefile.in (edit): Substitute for oa_enable_profiling.
* lisp/core.lisp.in ($EnableLispProfiling): New.
(compileLispFile): Use it.
|
|
SETELT.
|
|
getSimpleArrayEntry instead of ELT.
|
|
* interp/i-spec1.boot (evalCOLLECT): Fix thinko.
|
|
(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.
|
|
(doIt): Use it for capsule-level conditional expressions.
|
|
* interp/scan.boot: '@@' is no longer a keyword.
* interp/cparse.boot (npColonQuery): Remove.
* interp/parse.boot (parseAtAt): Likewise.
* interp/postpar.boot (postAtAt): Likewise.
|
|
* lisp/Makefile.in: Remove generated files when cleaning.
* interp/Makefile.pamphlet: Add executable extensions if appropriate.
|
|
* interp/fnewmeta.lisp (PARSE-Sexpr1): Disable negative integers
in data. A facility not actually used in Spad code.
|
|
* interp/format.boot (dollarPercentTran): Translate T$ too.
(application2String): Handle quasiquotations.
* interp/postpar.boot (killColons): Don't remove quantified variables.
|
|
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.
|
|
* interp/sys-driver.boot (initializeGlobalState): Use it for
default initialization level.
|
|
* interp/compiler.boot (compRetractGruard): Rename from
compRetractAlternative. Split.
(compRecoverGuard): Rename from compRecoverAlternative. Split.
(compAlternativeGuardItem): New. Use them.
(compAlternativeGuard): New.
(compMatchAlternative): New. Split from compMatch.
(compMatchScrutinee): Likewise.
(defineMatchScrutinee): Likewise.
(compMatch): Rework.
|
|
|
|
* interp/i-funsel.boot: Likewise.
|
|
* interp/i-funsel.boot (findFunctionInDomain): Don't look into
categories.
* interp/i-coerce.boot (retract): Retract domain objects too.
(retract1): Do it.
(coerceInteractive): Likewise.
* interp/nrunfast.boot (getDomainCategoriesVector): New.
(getDomainCompleteCategories): Likewise.
|
|
|
|
|
|
spelling for '{' and '}'.
* interp/fnewmeta.lisp (|PARSE-Primary1|): Use PARSE-Data for
quoted forms.
(|PARSE-Sexpr1|): Tidy.
* interp/parse.boot (washOperatorName): New. Issue deprecation
diagnostics for string syntax for operator names in signatures.
(parseHas): Use it.
(transCategoryItem): Likewise.
* interp/metalex.lisp (advance-token): Likewise.
* algebra/boolean.spad.pamphlet: Tidy.
|
|
at capsule function scope.
|
|
(parseCategory): Don't call it.
* interp/nrungo.boot (lookupPred): Don't check for "asserted".
|
|
* interp/i-funsel.boot (hasCaty): Recursively look into Joins.
* interp/interop.boot (newHasCategory): Likewise.
* interp/compiler.boot (compHasFormat): Handle unnamed categories.
* interp/info.boot (knownInfo): Likewise.
|
|
name$Kernel removal.
|
|
* interp/define.boot (doIt): Tidy conditional case.
* boot/tokens.boot: 'fourth' is a now a builtin function.
|
|
|
|
* interp/c-util.boot (diagnoseUnknownType): Diagnose duplicate
fields in Record or Union, or duplicate constants in Enumeration.
* interp/i-eval.boot (checkRecordOrUnionFields): New.
(evaluateType): Use it.
* testsuite/interpreter/sf-2799773.input: New.
|
|
* 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.
|
|
(FunctorData): Likewise.
(functorData$DomainConstructor): Likewise.
|
|
* interp/parse.boot (parseReturn): Remove.
* interp/compiler.boot (compReturn): Tidy.
|
|
* algebra/syntax.spad.pamphlet (SpadAst): Fix typo.
|
|
* 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.
|
|
* algebra/op.spad.pamphlet (BasicOperator): Don't export is? here.
Inherit it from OperatorCategory Symbol.
* algebra/catdef.spad.pamphlet (LeftLinearSet): New category.
(RightLinearSet): Likewise.
(LinearSet): Likewise.
(AbelianGroup): Extend LeftLinearSet Integer.
(LeftModule): Extend LeftLinearSet R.
(Module): Extend LinearSet R.
(RightModule): Extend RightLinearSet R.
* algebra/exposed.lsp.pamphlet: Expose LeftLinearSet,
RightLinearSet, and LinearSet.
* algebra/Makefile.pamphlet: Tidy.
|
|
definition for before?.
|
|
|
|
* 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.
|
|
* algebra/fmod.spad.pamphlet (IntegerMod): Define before?
* algebra/ffp.spad.pamphlet (FiniteFieldExtensionByPolynomial):
Likewise.
* algebra/pf.spad.pamphlet (InnerPrimeField): Likewise.
* testsuite/interpreter/sf-2798220.input: New.
|
|
(getInverseEnvironment): Likewise.
(compLogicalNot): Don't normalize to if-statement.
|
|
(checkExternalEntity): Handle Builtin external entities.
(compSignatureImport): Likewise.
* algebra/boolean.spad.pamphlet (Boolean): Import Lisp function
from Foreign Builtin.
(KleeneTrivalentLogic): The constant `true' and `false' are now
inherited.
|
|
`true' and `false'.
(Boolean): Ihenrit them.
|
|
* interp/sys-constants.boot ($OperatorFunctionNames): Include /\
and \/.
* interp/fnewmeta.lisp (|PARSE-ReductionOp|): Tidy.
* interp/metalex.lisp (|PARSE-OperatorFunctionName|): Likewise.
* algebra/boolean.spad.pamphlet (PropositionalLogic): Use plain
syntax for operators.
(Logic): Likewise.
(Boolean): Likewise.
(KleeneTrivalentLogic): Likewise.
|