aboutsummaryrefslogtreecommitdiff
path: root/src/ChangeLog
AgeCommit message (Collapse)AuthorFilesLines
2008-12-09 r12415@gauss: gdr | 2008-12-06 11:42:45 -0600dos-reis1-1/+15
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.
2008-12-082008-12-07 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis1-4/+35
* 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.
2008-12-06Support getting process id in Windows.alfredoport1-0/+10
2008-12-05 r12404@gauss: gdr | 2008-12-04 21:21:54 -0600dos-reis1-0/+11
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.
2008-12-03 * interp/compiler.boot (compIs): Error if left operand is not ados-reis1-0/+5
domain expression.
2008-12-02 * interp/parsing.lisp (initial-substring-p): Match case sensitively.dos-reis1-0/+4
2008-12-01 * interp/define.boot (compile): Don't check for PAC names.dos-reis1-0/+10
* 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.
2008-12-01 * interp/parse.boot (parseEquivalence): Remove.dos-reis1-0/+4
2008-12-01 * interp/define.boot (disallowNiAttribute): Remove.dos-reis1-0/+6
(compDefineFunctor1): Don't use it anymore. (compCategoryItem): Filter out nil attributes here.
2008-11-30 * interp/nruncomp.boot (deltaTran): Don't check for $NRTaddFormdos-reis1-0/+8
againg; it was already checked by NRTassocIndex. (genDeltaEntry): Likewise. (NRTgetLocalIndex): Likewise. * interp/wi2.boot (genDeltaExntry): Likewise.
2008-11-30 * interp/define.boot (mustInstantiate): Fix thinko introduced bydos-reis1-0/+6
earlier tweaks. (mkExplicitCategoryFunction): Likewise.
2008-11-29 * interp/nruncomp.boot (genDeltaSpecialSig): Remove, as unused.dos-reis1-0/+4
2008-11-29 * interp/nruncomp.boot (deltaTran): Don't encode signature again.dos-reis1-0/+5
(genDeltaEntry): Remove dead pattern match.
2008-11-29 * interp/compiler.boot (setqSingle): Use setShellEntry.dos-reis1-0/+11
* 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".
2008-11-29 * interp/define.boot (compCapsuleInner): Call processFunctor.dos-reis1-0/+10
* interp/wi2.boot (compCapsuleInner): Likewise. * interp/functor.boot (processFunctorOrPackage): Remove. (processPackage): Likewise. (subTree): Likewise. (setPackageLocals): Likewise. (PackageDescendCode): Likewise.
2008-11-29 * interp/nruncomp.boot (buildFunctor): Remov reference to $NRTvec.dos-reis1-0/+5
* interp/nrunfast.boot ($NRTvec): Don't define.
2008-11-27 * interp/server.boot (serverLoop): Remove, as unused.dos-reis1-0/+4
2008-11-27 * interp/nruncomp.boot (NRTgetAddForm): Remove, as unused.dos-reis1-0/+4
2008-11-27 * interp/nruncomp.boot (NRTassocIndex): Don't set $found.dos-reis1-0/+4
2008-11-26 * interp/define.boot (compSignature): New. Split fromdos-reis1-0/+8
compCategoryItem. (compCategoryItem): Use it. Tidy. (quotifyCategoryArgument): Remove. (mkEvalableCategoryForm): Tidy.
2008-11-26 * interp/parse.boot (parseImplies): Remove.dos-reis1-0/+4
2008-11-24 * interp/lisplib.boot (compDefineExports): Tidy.dos-reis1-0/+5
* interp/define.boot (compDefineFunctor1): Adjust call.
2008-11-24 * interp/i-output.boot ($RecordSeparator): New.dos-reis1-0/+13
(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.
2008-11-24 * lib/cfuns-c.c (oa_copy_file): Specify permission mode for thedos-reis1-0/+5
new file.
2008-11-24 * algebra/lodop.spad.pamphlet (OrdinaryDifferentialRing): Tidy.dos-reis1-0/+6
* algebra/sex.spad.pamphlet (SExpressionCategory): Fix breakage from last commit.
2008-11-23 * algebra/seg.spad.pamphlet (SegmentCategory): Extenddos-reis1-0/+15
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 %.
2008-11-21 * algebra/alql.spad.pamphlet (Database): Now CoercibleFrom List S.dos-reis1-0/+21
* 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.
2008-11-21 * algebra/annacat.spad.pamphlet (NumericalIntegrationProblem):dos-reis1-0/+10
Remove redundant signature. (NumericalODEProblem): Likewise. (NumericalPDEProblem): Likewise. (NumericalOptimizationProblem): Likewise. * algebra/forttyp.spad.pamphlet (FortranType): Likewise. * algebra/void.spad.pamphlet (Void): Now CoercibleTo OutputForm.
2008-11-20 * algebra/wtpol.spad.pamphlet (WeightedPolynomials): Nodos-reis1-0/+20
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.
2008-11-20 * algebra/coerce.spad.pamphlet (HomotopicTo): New.dos-reis1-0/+6
* algebra/exposed.lsp.pamphlet: Expose it. * algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include HOMOTOP.
2008-11-20 * algebra/coerce.spad.pamphlet (CoercibleFrom): New.dos-reis1-0/+9
(ConvertibleFrom): Likewise. (RetractableTo): Use it. * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include KRCFROM and KVTFROM. * share/algebra/: Update databases.
2008-11-18 * interp/sys-utility.boot (loadExports): New.dos-reis1-0/+12
* 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.
2008-11-18 * interp/nrunfast.boot (resolveNiladicConstructors): New.dos-reis1-0/+6
(newHasTest): Use it to handle signature export test. * testsuite/interpreter/has.input: New.
2008-11-17 * interp/lisplib.boot (compDefineExports): Now take operationdos-reis1-0/+7
exported list, instead of category object. Tidy. * interp/define.boot (compDefineFunctor1): Adjust call to compDefineExports.
2008-11-17 * lisp/core.lisp.in (|getOptionValue|): Make second argument optional.dos-reis1-0/+14
* interp/sys-driver.boot (initializeGlobalState): Set $compileExportsOnly. * interp/lisplib.boot (compDefineExports): New. * interp/define.boot (skipCategoryPackage?): New. (compDefineCategory1): Use it. (compDefineFunctor): Don't compile to NRLIB if interested only in exports. (compDefineFunctor1): Honor $compileExportsOnly. * interp/sys-macros.lisp (|withOutputFile|): New. * interp/sys-utility.boot (quoteForm): Likewise.
2008-11-16 * interp/define.boot: More cleanup.dos-reis1-0/+5
* interp/iterator.boot: Likewise.
2008-11-16 * interp/c-util.boot: Clean up.dos-reis1-0/+22
* interp/database.boot: Likewise. * interp/debug.lisp: Likewise. * interp/define.boot: Likewise. * interp/functor.boot: Likewise. * interp/g-cndata.boot: Likewise. * interp/g-opt.boot: Likewise. * interp/g-util.boot: Likewise. * interp/guess.boot: Likewise. * interp/i-output.boot: Likewise. * interp/macros.lisp: Likewise. * interp/nrungo.boot: Likewise. * interp/preparse.lisp: Likewise. * interp/spad.lisp: Likewise. * interp/sys-macros.lisp: Likewise. * interp/trace.boot: Likewise. * interp/types.boot: Likewise. * interp/vmlisp.lisp: Likewise. * interp/word.boot: Likewise.
2008-11-16 * interp/package.boot: Fold content into functor.boot. Delete.dos-reis1-0/+5
* interp/Makefile.pamphlet: Adjust.
2008-11-16 * interp/i-syscmd.boot: Remove dead code.dos-reis1-0/+5
* interp/spad.lisp: Likewise.
2008-11-15 * interp/Makefile.pamphlet (OBJS): Remove cfuns. Includedos-reis1-0/+6
hashcode. * interp/cfuns.lisp: Delete.
2008-11-15 * interp/compiler.boot: Import "msgdb", not "c-util". Movedos-reis1-0/+7
compiler driver to i-syscmd.boot. * interp/define.boot: Import "nruncomp", "functor", "package". * interp/wi2.boot (NRTgetLocalIndex): Remove duplicate.
2008-11-15 * interp/spad.lisp (incTimeSum): Remove.dos-reis1-0/+14
* interp/modemap.boot ($forceAdd): Define. * interp/nruncomp.boot ($NRTderivedTargetIfTrue): Likewise. ($killOptimizeIfTrue): Likewise. * interp/i-toplev.boot (processInteractive): Tidy. * interp/c-util.boot ($compErrorMessageStack): Define. * interp/compiler.boot (compApply): Remove. ($compTimeSum): Likewise ($resolveTimeSum): Likewise. (compCompilerPredicate): Tidy. (comp3): There is no such thing as KAPPA.
2008-11-15 * algebra/Makefile.pamphlet: Individual .spad files are .PRECIOUS.dos-reis1-0/+4
2008-11-15 * interp/category.boot: Define global vars.dos-reis1-0/+14
* interp/compiler.boot: Likewise. * interp/define.boot: Likewise. * interp/sys-globals.boot: Likewise. * interp/wi1.boot ($frontier): Removed, as unused. * interp/wi2.boot ($attributesName): Likewise. ($goGetList): Likewise. ($NRTaddList): Likewise. ($NRTloadTimeAlist): Likewise. ($lisplibMissingFunctions): Likewise. ($alternateViewList): Likewise.
2008-11-03 * interp/br-data.boot: Remove uses of BOUNDP.dos-reis1-0/+14
* interp/br-op1.boot: Likewise. * interp/c-doc.boot: Likewise. * interp/functor.boot: Likewise. * interp/category.boot: Likewise. * interp/g-cndata.boot: Likewise. * interp/i-util.boot: Likewise. * interp/lisplib.boot: Likewise. * interp/mark.boot: Likewise. * interp/wi1.boot: Likewise. * interp/wi2.boot: Likewise.
2008-11-03 * interp/postpar.boot (postcheckTarget): Likewise.dos-reis1-0/+10
(isPackageType): Likewise. * interp/lisplib.boot (getSlotFromDomain): Remove. * interp/macros.lisp (|saySpadMsg|): Remove. * interp/vmlisp.lisp (qsetq): Remove. (STATEP, FUNARGP, PAPPP): Likewise. (LISTOFQUOTES, LISTOFFREES): Likewise.
2008-11-03 * algebra/syntax.spad.pamphlet (Syntax): Print syntax objects asdos-reis1-0/+7
s-expressions. * algebra/sex.spad.pamphlet (SExpression): Print strings as String.
2008-11-03 * interp/Makefile.pamphlet (template.$(FASLEXT)): Remove.dos-reis1-0/+7
* interp/template.boot: Move non-dead code where appropriate. Remove file. * boot/ast.boot (bfQ): Improve.
2008-11-02 * lisp/core.lisp.in (|$ExtraRuntimeLibraries|): Listify.dos-reis1-0/+6
(extra-runtime-libs): Tidy. * lisp/Makefile.in (edit): stringify $(oa_c_runtime_extra) elements.
2008-11-02 * driver/utils.c (OPENAXIOM_DEFAULT_DRIVER): Can no longer bedos-reis1-0/+7
openaxiom_unknown_driver. (openaxiom_preprocess_arguments): If a file is specified, then it is a script unless told otherwise.