Age | Commit message (Collapse) | Author | Files | Lines |
|
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.
|
|
Tidy Middle End IL.
|
|
Introduce Middle IL.
|
|
Add some documentation.
|
|
Tidy.
|
|
Remove unused parse codes.
|
|
Remove dead code.
|
|
Tidy resolveNiladicConstructors.
|
|
Tidy resolveNiladicConstructors.
|
|
Remove quotify.
|
|
Remove unused parse functions.
|
|
Modularize S-PROCESS.
|
|
OperatorCategory.
* algebra/Makefile.pamphlet (axiom_algebra_layer_15): Include ARITY.
(axiom_algebra_layer_16): Include OPERCAT.
* share/algebra: Update databases.
|
|
Implement basic support for pattern matching.
r12416@gauss: gdr | 2008-12-06 18:09:19 -0600
Parse case pattern match.
r12417@gauss: gdr | 2008-12-06 21:28:30 -0600
Implement basic case pattern matching for retractable domain.
r12418@gauss: gdr | 2008-12-07 00:58:58 -0600
Refine retractability implementation.
r12419@gauss: gdr | 2008-12-07 01:39:32 -0600
Update cached Lisp translation
r12420@gauss: gdr | 2008-12-07 03:52:09 -0600
r12421@gauss: gdr | 2008-12-07 10:30:44 -0600
Implement type recovery too.
r12422@gauss: gdr | 2008-12-07 19:18:09 -0600
Simplify LET-forms and COND-forms.
r12423@gauss: gdr | 2008-12-07 21:21:12 -0600
Fix typos
r12424@gauss: gdr | 2008-12-08 01:14:54 -0600
Parse case-pattern in the interpreter.
r12427@gauss: gdr | 2008-12-08 20:32:29 -0600
Handle RetractableTo T.
|
|
* interp/g-opt.boot ($simpleVMoperators): New.
(isSimpleVMForm): Likewise.
(isFloatableVMForm): Likewise.
(optLET): Likewise. Expand backend let-forms.
* interp/c-util.boot (foldSpadcall): Look into LET and COND forms.
(replaceSimpleFunctions): Likewise.
(mutateCONDFormWithUnaryFunction): New.
(mutateLETFormWithUnaryFunction): Likewise.
* interp/compiler.boot (tryCourtesyCoercion): Split from coerce.
(compRetractAlternative): Simplify. Now try courtesy coercions
before retraction.
(compRecoverAlternative): New.
(compMatch): Simplify. Implement type recovery too.
2008-12-06 Gabriel Dos Reis <gdr@cs.tamu.edu>
* interp/compiler.boot (compRetractAlternative): New.
(compMatch): Likewise. Use it to implement pattern macthing
for retractable domains.
* interp/parse.boot (parseAtAt): New.
* interp/postpar.boot (postAtAt): Likewise.
(postAlternatives): Likewise.
(postMatch): Likewise.
* interp/metalex.lisp (Keywords): Remove `otherwise' as keyword.
* interp/fnewmeta.lisp (|PARSE-Match|): New local parser.
* interp/newaux.lisp (@@): New token. Align wih interpreter.
(otherwise): Remove binding specification.
(case): Now also a Nud token.
|
|
|
|
Branch for fixing CoercibleFrom changes.
r12405@gauss: gdr | 2008-12-05 01:34:50 -0600
* algebra/fs2ups.spad.pamphlet
(FunctionSpaceToUnivariatePowerSeries): Revert previous
requirement change on parameter.
* algebra/manip.spad.pamphlet (PolynomialRoots): Likewise.
* algebra/rf.spad.pamphlet (PolynomialCategoryQuotientFunctions):
Likewise.
* algebra/sum.spad.pamphlet (GosperSummationMethod): Likewise.
* share/algebra: Update databases.
|
|
domain expression.
|
|
|
|
* interp/g-opt.boot (optCall): Likewise.
* interp/functor.boot (SetFunctionSlots): Likewise.
(mkOperatorEntry): Lose first parameter.
(optPackageCall): Remove.
* interp/category.boot (mkCategory): Document. Adjust call to
mkOperatorEntry.
|
|
|
|
(compDefineFunctor1): Don't use it anymore.
(compCategoryItem): Filter out nil attributes here.
|
|
againg; it was already checked by NRTassocIndex.
(genDeltaEntry): Likewise.
(NRTgetLocalIndex): Likewise.
* interp/wi2.boot (genDeltaExntry): Likewise.
|
|
earlier tweaks.
(mkExplicitCategoryFunction): Likewise.
|
|
|
|
(genDeltaEntry): Remove dead pattern match.
|
|
* interp/wi1.boot (setqSingle): Likewise.
* interp/functor.boot (setVector4): Likewise.
(DescendCode): Abort on SETELT opcode.
(SetFunctionSlots): Likewise.
* interp/nrunfast.boot (evalSlotDomain): Likewise.
* interp/nrungo.boot (NRTevalDomain): Likewise.
* interp/showimp.boot (getDomainRefName): Match "setShellEntry".
|
|
|
|
* interp/wi2.boot (compCapsuleInner): Likewise.
* interp/functor.boot (processFunctorOrPackage): Remove.
(processPackage): Likewise.
(subTree): Likewise.
(setPackageLocals): Likewise.
(PackageDescendCode): Likewise.
|
|
* interp/nrunfast.boot ($NRTvec): Don't define.
|
|
|
|
|
|
|
|
|
|
compCategoryItem.
(compCategoryItem): Use it. Tidy.
(quotifyCategoryArgument): Remove.
(mkEvalableCategoryForm): Tidy.
|
|
|
|
* interp/define.boot (compDefineFunctor1): Adjust call.
|
|
(maprin): Use it. Separate record in lean mode.
* interp/sys-globals.boot ($leanMode): Define.
* interp/sys-driver.boot (systemMain): Initialize.
* interp/ht-util.boot (executeInterpreterCommand): Print prompt
only in non-lean mode.
* interp/int-top.boot (SpadInterpretStream): Likewise.
(intloopReadConsole): Likewise.
* interp/metalex.lisp (get-a-line): Likewise.
* interp/server.boot: Likewise.
|
|
new file.
|
|
* algebra/sex.spad.pamphlet (SExpressionCategory): Fix breakage
from last commit.
|
|
ConvertibleFrom S.
* algebra/newpoint.spad.pamphlet (PointCategory): Extend
ConvertibleFrom List R.
* algebra/misc.spad.pamphlet (SingletonAsOrderedSet): Now
ConvertibleTo Symbol.
* algebra/integer.spad.pamphlet (RomanNumeral): Now
ConvertibleFrom Symbol.
* algebra/float.spad.pamphlet (Float): Now ConvertibleFrom SF.
* algebra/sex.spad.pamphlet (SExpressionCategory): Extend
ConvertibleFrom Str, ConvertibleFrom Sym, ConvertibleFrom Int,
ConvertibleFrom Flt, ConvertibleFrom List %.
|
|
|
|
* algebra/asp.spad.pamphlet (Asp20): Now CoercibleFrom MAT FEXPR.
(Asp6): Now CoercibleFrom Vector FEXPR.
* algebra/catdef.spad.pamphlet (Algebra): Extend CoercibleFrom R.
(Ring): Extend CoercibleFrom Integer.
* algebra/formula.spad.pamphlet (ScriptFormulaFormat): Now
CoercibleFrom E.
* algebra/fortran.spad.pamphlet (FortranCode): Remove redundant
signature.
* algebra/fs2ups.spad.pamphlet
(FunctionSpaceToUnivariatePowerSeries): Tidy parameter.
* algebra/laurent.spad.pamphlet
(UnivariateLaurentSeriesConstructorCategory): Extend CoercibleFrom
UTS.
* algebra/manip.spad.pamphlet (PolynomialRoots): Tidy parameter.
* algebra/modmon.spad.pamphlet (ModMonic): Now CoercibleFrom Rep.
* algebra/ore.spad.pamphlet (UnivariateSkewPolynomial): Now
CoercibleFrom Variable x.
|
|
Remove redundant signature.
(NumericalODEProblem): Likewise.
(NumericalPDEProblem): Likewise.
(NumericalOptimizationProblem): Likewise.
* algebra/forttyp.spad.pamphlet (FortranType): Likewise.
* algebra/void.spad.pamphlet (Void): Now CoercibleTo OutputForm.
|
|
|
|
HomotopicTo P.
(OrdinaryWeightedPolynomials): Likewise.
* algebra/modmonom.spad.pamphlet (ModuleMonomial): Now
HomotopicTo MM.
* algebra/matrix.spad.pamphlet (coerce$RectangularMatrix): Remove
redundant signature.
* algebra/lodop.spad.pamphlet (OrdinaryDifferentialRing): Now
HomotopicTo HomotopicTo R.
* algebra/alql.spad.pamphlet (DataList): Now HomotopicTo List S.
* algebra/array1.spad.pamphlet (Tuple): Now HomotopicTo
PrimitiveArray S.
* algebra/kl.spad.pamphlet (CachableSet): Now HomotopicTo S.
* algebra/java.spad.pamphlet (JavaBytecode): Now HomotopicTo Byte.
* algebra/fname.spad.pamphlet (FileNameCategory): Extends
HomotopicTo String.
* algebra/data.spad.pamphlet (Byte): Now HomotopicTo Character.
|
|
* algebra/exposed.lsp.pamphlet: Expose it.
* algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include HOMOTOP.
|
|
(ConvertibleFrom): Likewise.
(RetractableTo): Use it.
* algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include
KRCFROM and KVTFROM.
* share/algebra/: Update databases.
|
|
* interp/sys-driver.boot (initializeGlobalState): Set
$compileDefaultsOnly.
* interp/lisplib.boot (isFunctor): Load exports file if present.
* interp/define.boot (compDefineCategory2): Don't write out
category load time stuff if we are compiling only defaults.
* interp/boot-pkg.lisp: Import loadFileIfPresent.
* lisp/core.lisp.in (|loadFileIfPresent|): New.
(|loadIfPresent|): Use it.
|
|
(newHasTest): Use it to handle signature export test.
* testsuite/interpreter/has.input: New.
|