aboutsummaryrefslogtreecommitdiff
path: root/src/ChangeLog
AgeCommit message (Collapse)AuthorFilesLines
2010-06-13 * algebra/array1.spad.pamphlet (IndexedFlexibleArray) [merge!]: Tidy.dos-reis1-0/+10
* algebra/intfact.spad.pamphlet (IntegerRoots) [perfectNthRoot]: Likewise. * algebra/numode.spad.pamphlet (NumericalOrdinaryDifferentialEquations) [rf4a]: Likewise. * algebra/solvelin.spad.pamphlet (LinearSystemMatrixPackage) [aSolution]: Likewise.
2010-06-13 * algebra/padic.spad.pamphlet (InnerPAdicInteger) [coerce]: Tidy.dos-reis1-0/+4
2010-06-13 * algebra/aggcat.spad.pamphlet (UnaryRecursiveAggregate) dos-reis1-0/+8
[#, cycleEntry, cycleLength]: Tidy. (ListAggregate) [position]: Likewise. * algebra/string.spad.pamphlet (IndexedString) [replace,split, leftTrim, rightTrim]: Likewise.
2010-06-13 * algebra/aggcat.spad.pamphlet (OneDimensionalArrayAggregate)dos-reis1-0/+5
[merge,insert,delete]: Tidy.
2010-06-13 * interp/compiler.boot (complainIfShadowing): New.dos-reis1-0/+7
(compStepIterator): Use it to warn about loop variable shadowing declaration in enclosing scope. (compIterator): Likewise.
2010-06-12 * algebra/kl.spad.pamphlet (Kernel): Don't clear the ondos-reis1-0/+7
instanstiation, for that may erase other precious information in the running seesion when Kernel is implicitly re-instantiated by the interpreter.
2010-06-12 * algebra/permgrps.spad.pamphlet (PermutationGroup): Renamedos-reis1-0/+11
movedPoints to support. Adjust call eval. * algebra/perm.spad.pamphlet (PermutationCategory): Now extend Eltable. Remove eval. Rename movedPoints to support. (Permutation): Adjust. * algebra/irsn.spad.pamphlet (listPermutationIrrRepSymNatPackage): Change call to eval to elt. * algebra/rep1.spad.pamphlet: Likewise.
2010-06-12 * interp/g-opt.boot (replaceableTemporary?): New.dos-reis1-0/+6
(optSEQ) [getRidOfTemps]: Use it to decide when to safely inline a temporary variable definition.
2010-06-12 * interp/compiler.boot (compIterate): Rewrite.dos-reis1-0/+5
(compRepeatOrCollect): Tidy. Bind $loopBodyTag.
2010-06-12 * algebra/tree.spad.pamphlet (node?$Tree): Fix thinko.dos-reis1-0/+4
2010-06-11 * interp/buildom.boot (mkNewUnionFunList): Use %bind, not PROG2.dos-reis1-0/+5
(mkUnionFunList): Likewise.
2010-06-11 * algebra/tree.spad.pamphlet (map!Tree): Don't forget the returndos-reis1-0/+5
value.
2010-06-10 * interp/compiler.boot (freeVarUsage): Handle %when too.dos-reis1-0/+11
(compLogicalNot): Generate %not form. (satisfies): Use %bind. (compMatch): Likewise. (compReduce1): Generate %loop directly instead of %reduce. * interp/g-opt.boot (changeThrowToExit): Don't check for %reduce. * interp/g-util.boot (expandRepeat): Remove. (expandReduce): Likewise.
2010-06-10 * interp/g-opt.boot (optCollectVector): Generate %loop for thedos-reis1-0/+5
non-simple case.
2010-06-10 * interp/g-util.boot (expandLoop): Now take all arguments as ados-reis1-0/+7
single %loop form. (expandCollect): Adjust call. (expandRepeat): Likewise.
2010-06-09 * interp/g-opt.boot (optCollectVector): Generare %collect form,dos-reis1-1/+6
not COLLECT.
2010-06-09 * interp/compiler.boot (canReturn): Handle %when and %bind.dos-reis1-0/+14
(compMatchAlternative): Generate %bind form. (compMatch): Likewise. (compReduce1): Rewrite. (getIdentity): Tidy. * interp/g-opt.boot (changeThrowToExit): HAndle %reduce. (varIsAssigned): %store is side-effectful. * interp/g-util.boot (expandReduce): New. Expand %reduce forms. * interp/i-map.boot (getUserIdentifiersIn): Handle %reduce. (findLocalVars1): Likewise. * interp/i-spec1.boot (checkForFreeVariables): Likewise.
2010-06-09 * interp/g-opt.boot (removeNeedlessThrow): Tidy.dos-reis1-0/+4
2010-06-09 Widen scope of iterator variables in presence of terminatingdos-reis1-0/+10
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.
2010-06-07 * interp/compiler.boot (finishLambdaExpression): Bind escapeddos-reis1-0/+5
variables with LET-form instead of assignment.
2010-06-07 * interp/compiler.boot (replaceExitEtc): Replace TAGGEDreturn withdos-reis1-0/+9
%return. * interp/g-opt.boot (removeNeedlessThrow): New. (optCatch): Use to it to avoid horrendous code generation for return statement. * interp/g-util.boot (expandReturn): New. Expand %return forms.
2010-06-07 * interp/c-util.boot (isLispSpecialVariable): New.dos-reis1-0/+6
(mutateToBackendCode): Use it to record special vars. Be careful with locally bound variables.
2010-06-06 * interp/compiler.boot (replaceExitEtc): Tidy.dos-reis1-0/+4
2010-06-06 * interp/c-util.boot (mutateToBackendCode): Don't replace explicitdos-reis1-0/+5
SETQ by LETT.
2010-06-06 * interp/c-util.boot (needPROGS?): New.dos-reis1-0/+5
(transformToBackendCode): Use it. Don't add unneeded PROG/RETURN.
2010-06-06 * interp/compiler.boot (compRepeatOrCollect): Compile listdos-reis1-0/+5
comprehension to %collect form.
2010-06-05 * driver/utils.c (openaxiom_execute_core): Don't let CLISP fooldos-reis1-0/+5
itself.
2010-06-05 * algebra/exposed.lsp.pamphlet: Expose SquareMatrix.dos-reis1-0/+4
2010-06-04 * interp/buildom.boot (UnionEqual): Don't COERCE to FUNCTION. Usedos-reis1-1/+1
eval. Use middle end opcodes instead of EQCAR. (coerceUn2E): Likewise.
2010-06-04 * interp/buildom.boot (UnionEqual): Don't COERCE to FUNCTION. Usedos-reis1-0/+6
eval. (coerceUn2E): Likewise.
2010-06-04 * interp/br-con.boot: More cleanup.dos-reis1-0/+26
* interp/br-op1.boot: Likewise. * interp/br-saturn.boot: Likewise. * interp/c-util.boot: Likewise. * interp/category.boot: Likewise. * interp/clam.boot: Likewise. * interp/database.boot: Likewise. * interp/functor.boot: Likewise. * interp/g-cndata.boot: Likewise. * interp/g-util.boot: Likewise. * interp/guess.boot: Likewise. * interp/i-coerce.boot: Likewise. * interp/i-funsel.boot: Likewise. * interp/i-intern.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/interop.boot: Likewise. * interp/newfort.boot: Likewise. * interp/nruncomp.boot: Likewise. * interp/nrunfast.boot: Likewise. * interp/nrunopt.boot: Likewise. * interp/setvars.boot: Likewise. * interp/slam.boot: Likewise. * interp/topics.boot: Likewise.
2010-06-04 * interp/buildom.boot: Clean up QEQCAR uses.dos-reis1-0/+4
2010-06-03 * interp/buildom.boot: Cleanup.dos-reis1-0/+7
* interp/c-util.boot ($SetCategory): New constant. * interp/compiler.boot: Use it. * interp/functor.boot: Likewise.
2010-06-02 * interp/c-util.boot (usedSymbol?): New.dos-reis1-0/+11
(declareUnusedParameters): Use it. Reimplement. * interp/i-map.boot (compileCoerceMap): Adjust call. * interp/i-spec1.boot (compileADEFBody): Likewise. (mkIterFun): Likewise. * interp/slam.boot (reportFunctionCompilation): Likewise. (reportFunctionCacheAll): Likewise. (compileRecurrenceRelation): Likewise.
2010-06-01 * algebra/list.spad.pamphlet: Use builtin functions.dos-reis1-0/+4
2010-06-01 * interp/g-util.boot: Add more opcodes.dos-reis1-0/+7
* algebra/syntax.spad.pamphlet: Clean up. * algebra/variable.spad.pamphlet: Likewise. * algebra/ystream.spad.pamphlet: Likewise.
2010-05-31 * interp/compiler.boot (compWithMappingMode): Handle lambdados-reis1-0/+5
expressions as mapping.
2010-05-30 * interp/c-util.boot (middleEndExpand): Tidy.dos-reis1-0/+19
* 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.
2010-05-30 * interp/i-coerce.boot (getSubDomainPredicate): Use compileInteractive.dos-reis1-0/+4
2010-05-30 * algebra/boolean.spad.pamphlet (Boolean): Remove reference todos-reis1-0/+5
Lisp. Use builtin functions.
2010-05-29 * interp/compiler.boot (getExternalSymbolMode): Allow Lisp asdos-reis1-0/+9
foreign language. (checkExternalEntity): Likewise. (compSignatureImport): Likewise. Give foreign variables dummy values. * interp/c-util.boot (middleEndExpand): Handle %true and %false. * interp/g-util.boot (expandToVMForm): Likewise.
2010-05-28 Add support for 'property' builtin function.dos-reis1-0/+10
* interp/g-timer.boot: Rename property to prop to avoid conflict. * boot/parser.boot (bpAssignLHS): Allow functional places to assign to. * boot/ast.boot (bfPlace): New. (bfAssign): Handle %Place forms. * boot/tokens.boot: property is now translated to GET.
2010-05-28 * boot/tokens.boot: args is now a selector.dos-reis1-0/+7
* interp/g-timer.boot: Use integer? in lieu of INTP. * interp/i-syscmd.boot: Likewise. * interp/msgdb.boot: Likewise.
2010-05-28 * interp/sys-utility.boot (eval): Define here.dos-reis1-0/+17
* interp/br-con.boot: Use it. * interp/br-op1.boot: Likewise. * interp/br-saturn.boot: Likewise. * interp/cattable.boot: Likewise. * interp/ht-util.boot: Likewise. * interp/htsetvar.boot: Likewise. * interp/i-funsel.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/interop.boot: Likewise. * interp/server.boot: Likewise. * interp/showimp.boot: Likewise. * interp/trace.boot: Likewise. * interp/sys-macros.lisp (eval): Move to sys-utility.boot.
2010-05-27 * interp/sys-macros.lisp (eval): Expand opcodes before calling EVAL.dos-reis1-0/+42
* interp/slam.boot (reportFunctionCompilation): Tidy. Take extra care when generating code that access global variables. (reportFunctionCacheAll): Likewise. * interp/i-util.boot (isLocallyBound): Define. * interp/i-spec1.boot (upCOLLECT1): Bind $iteratorVars to nil. (upLoopIterSTEP): Call mkIteratorVariable instead of mkLocalVar. (upLoopIterIN): Likewise. (upStreamIterIN): Likewise. (upStreamIterSTEP): Likewise. (collectOneStream): Tidy. (mkAndApplyPredicates): Likewise. (mkIterFun): Lose last parameter. Tidy. (declare): Use isLocallyBound. (getAndEvalConstructorArgument): Likewise. (mkIteratorVariable): New. ($iteratorVars): New. * interp/i-spec2.boot (upREPEAT1): Bind $iteratorVars to nil. (isLocalPred): Use isLocallyBound. (compileIs): Likewise. (evalLETput): Likewise. (evalLETchangeValue): Likewise. (isType): Likewise. * interp/i-analy.boot (bottomUp): Likewise. (bottomUpDefaultCompile): Likewise. * interp/i-eval.boot (evalForm): Likewise. (getMappingArgValue): Likewise. * interp/i-map.boot (findLocalVars1): Likewise. (findLocalsInLoop): Tidy. Filter out iterator variables. (isLocalVar): Remove. * interp/g-util.boot (mkCacheName): Define here. (mkAuxiliaryName): Likewise. * interp/c-util.boot (backendCompileSLAM): Use mkCacheName. (backendCompileSPADSLAM): Likewise. * interp/clam.boot (compClam): Likewise. (clearCategoryCaches): Likewise. (clearCategoryCache): Likewise. * interp/g-timer.boot (timedEVALFUN): expandToVMForm is now implicitly called by eval.
2010-05-27 * interp/i-map.boot (compileCoerceMap): Minivectors are globaldos-reis1-0/+11
variables. Generate appropriate code. * interp/i-spec1.boot (compileTargetedADEF): Likewise. (compileADEFBody): Likewise. * interp/slam.boot (isRecurrenceRelation): Likewise. Adjust patterns to match minivectors. (mkDiffAssoc): Likewise. (reportFunctionCompilation): Don't declare minivectors.
2010-05-26 * interp/slam.boot (compileRecurrenceRelation): Generate code todos-reis1-0/+7
access and set the global value of the variable holding the cache state. * interp/g-util.boot: Add more middle end form expanders.
2010-05-26 * boot/tokens.boot: Automatically translate alphabetic?, digit?,dos-reis1-0/+40
lowerCase?, upperCase?, readByte, readInteger, readLine, writeByte, writeLine. * interp/as.boot: Use them. * interp/bc-matrix.boot: Likewise. * interp/bc-solve.boot: Likewise. * interp/br-con.boot: Likewise. * interp/br-search.boot: Likewise. * interp/br-util.boot: Likewise. * interp/c-doc.boot: Likewise. * interp/c-util.boot: Likewise. * interp/database.boot: Likewise. * interp/format.boot: Likewise. * interp/fortcall.boot: Likewise. * interp/functor.boot: Likewise. * interp/g-util.boot: Likewise. * interp/guess.boot: Likewise. * interp/ht-root.boot: Likewise. * interp/htcheck.boot: Likewise. * interp/htsetvar.boot: Likewise. * interp/i-map.boot: Likewise. * interp/i-output.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/i-util.boot: Likewise. * interp/int-top.boot: Likewise. * interp/intfile.boot: Likewise. * interp/mark.boot: Likewise. * interp/msgdb.boot: Likewise. * interp/pf2sex.boot: Likewise. * interp/pspad1.boot: Likewise. * interp/pspad2.boot: Likewise. * interp/scan.boot: Likewise. * interp/slam.boot: Likewise. * interp/sys-utility.boot: Likewise. * interp/topics.boot: Likewise. * interp/trace.boot: Likewise. * interp/word.boot: Likewise.
2010-05-26 * interp/c-util.boot ($ClearBodyToken): New constant.dos-reis1-0/+10
* interp/define.boot (compDefineCapsuleFunction): Use it in place of special character. (spadCompileOrSetq): Likewise. * interp/i-map.boot (addMap): Likewise. (getUserIdentifiersIn): Likewise. * interp/wi1.boot (spadCompileOrSetq): Likewise.
2010-05-25 * interp/g-util.boot: Add expanders for %lt, %le, %gt, %ge, %not,dos-reis1-0/+9
%and, %or, and %bind forms. * interp/c-util.boot (mutateToBackendCode): Handle LET and LET* forms. * interp/nrungo.boot (NRTisRecurrenceRelation): Move to ... * interp/slam.boot: Here. Remove NRT prefix. (compileRecurrenceRelation): Generate forms using middle-end opcodes.