aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2012-05-01 * algebra/integer.spad.pamphlet (Integer): Use %iaddmod, %isubmod,dos-reis11-78/+60
%imulmod. * algebra/si.spad.pamphlet (SingleInteger): Likewise. * interp/c-util.boot (devaluate): Use # in lieu of QVSIZE. * interp/g-opt.boot: %ilfshift and %irshift are now builtin side-effect free operations. * interp/lisp-backend.boot: Translate them. * interp/g-util.boot (mergeSort): Avoid QSDIFFERENCE. * interp/slam.boot: Likewise. * interp/sys-macros.lisp: Likewise. * interp/macros.lisp: Avoid QVMAXINDEX. * interp/vmlisp.lisp (QSDIFFERENCE): Remove. (QSGREATERP): Likewise. (QSLEFTSHIFT): Likewise. (QSLESSP): Likewise. (QSMAX): Likewise. (QSMIN): Likewise. (QSMINUS): Likewise. (QSMINUSP): Likewise. (QSODDP): Likewise. (QSABSVAL): Likewise. (QSPLUS): Likewise. (QSZEROP): Likewise. (QVMAXINDEX): Likewise. (QVSIZE): Likewise. (ZERO?): Likewise.
2012-04-30 * algebra/si.spad.pamphlet (SingleInteger): Use %iaddmod,dos-reis4-24/+32
%isubmod, and %imulmod. * interp/g-opt.boot: These are now builtin side-effect operators. (optIaddmod): New optimizer. Register. (optIsubmod): Likewise. (optImulmod): Likewise. * interp/sys-macros.lisp (QSADDMOD): Remove. (QSDIFMOD): Likewise. (QSMULMOD): Likewise.
2012-04-30 * interp/compiler.boot: Use float? in lieu of FLOATP.dos-reis16-51/+52
* interp/fortcall.boot: Likewise. * interp/i-object.boot: Likewise. * interp/newfort.boot: Likewise. * interp/i-analy.boot: Compare to 0 in lieu of ZEROP. * interp/i-special.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/sfsfun.boot: Likewise. * interp/sys-driver.boot: Likewise. * interp/macros.lisp: Directly use 1+ instead of QADD1. * interp/preparse.lisp: Likewise. * interp/slam.boot: Likewise. * interp/sys-macros.lisp: Likewise. * interp/sys-constants.boot ($BasicPredicates): Remove as unused. * interp/vmlisp.lisp (ADD1): Remove. (QSADD1): Likewise. (QSSUB1): Likewise. (QSTIMES): Likewise.
2012-04-30 * interp/fortcall.boot: Use copyTree, not COPY-TREE.dos-reis7-118/+116
* interp/i-intern.boot: Likewise. * interp/setvars.boot: Likewise. * interp/i-output.boot: Use abstractChar, not EBCDIC. * interp/i-util.boot: Likewise. * interp/vmlisp.lisp (EBCDIC): Remove. (CALLBELOW): Likewise. (RE-ENABLE-INT): Likewise. (QUOREM): Likewise.
2012-04-30 * lisp/core.lisp.in (fixnum?): New.dos-reis11-75/+57
* algebra/sex.spad.pamphlet: Use %float? instead of RNUM. Use %integer? instead of INTP. * interp/g-timer.boot: Use float? instead of RNUMP. * interp/i-coerce.boot: Use fixnum? instead of SINTP or SMINTP. * interp/i-intern.boot: Likewise. * interp/lisp-backend.boot: Likewise. * interp/slam.boot: Likewise. * interp/trace.boot: Likewise. * interp/vmlisp.lisp: Likewise. (INTP): Remove. (BINTP): Likewise. (LESSP): Likewise. (LINTP): Likewise. (MAKESTRING): Likewise. (MAPELT): Likewise. (NUMP): Likewise. (RNUMP): Likewise. (SINTP): Likewise. (SMINTP): Likewise.
2012-04-29 * interp/debug.lisp: ident? in lieu of IDENTP.dos-reis6-44/+46
* interp/macros.lisp: Likewise. * interp/parsing.lisp: Likewise. * interp/sys-macros.lisp: Likewise. * interp/vmlisp.lisp: Likewise. (IDENTP): Remove.
2012-04-29 * boot/ast.boot (bfNumber?): Rename from bfSmintable. Check fordos-reis4-11/+45
floating point literals too. Adjust callers. (bfLessp): Check for integer or floating pointer numbers. * interp/vmlisp.lisp (complex?): New. (complex): Likewise. (realPart): Likewise. (imagPart): Likewise. (conjugate): Likewise. (sqrt): Likewise.
2012-04-28 * interp/compiler.boot (finishLambdaExpression): Tidy.dos-reis3-3/+13
(compWithMappingMode): Use %lambda not LAMBDA. * interp/g-opt.boot (changeVariableDefinitionToStore): Handle %closure.
2012-04-28 * interp/boot-pkg.lisp (gensym?): Check for non-null object.dos-reis9-28/+37
* interp/clammed.boot: Use it in lieu of GENSYMP. * interp/debug.lisp: Likewise. * interp/g-opt.boot: Likewise. * interp/g-util.boot: Likewise. * interp/i-analy.boot: Likewise. * interp/trace.boot: Likewise. * interp/vmlisp.lisp (GENSYMP): Remove.
2012-03-02 * algebra/catdef.spad.pamphlet (MonoidOperation): Noew CoercibleTodos-reis2-3/+11
SemiGroupOperation T.
2012-02-27 * interp/nruncomp.boot (markOperation): New.dos-reis3-9/+17
(optDeltaEntry): Implement better patch for last change. * interp/compiler.boot (compFormWithModemap): Undo last change.
2012-02-27 * interp/compiler.boot (compFormWithModemap): Mark implementationdos-reis2-6/+13
resolution as appropriate.
2012-02-27 * interp/compiler.boot (emitLocalCallInsn): Mark externaldos-reis3-8/+22
operators as such, and local functions as such. (freeVarUsage): Do not count external and local functions. (extractCode): Tidy. Handle closure literals. * interp/g-opt.boot (optCall): Optimize external calls where possible. %external is a side-effect free operator.
2012-02-26 * interp/g-util.boot (usedSymbol?): Remove.dos-reis5-27/+39
(bindingForm?): New. (usesVariable?): Likewise. * interp/compiler.boot (declareUnusedParameters): Use it. * interp/g-opt.boot (inlineLocals): Likewise. (optClosure): Likewise. (optBind): Likewise. * interp/define.boot (compContained): Remove.
2012-02-26 * interp/c-util.boot (numOfOccurencesOf): Tidy.dos-reis4-3/+12
* interp/compiler.boot (compUnnamedMapping): Fix thinko. * interp/g-opt.boot (semiSimpleRelativeTo?): Likewise.
2012-02-26 * interp/compiler.boot (compTopLevel): Do not bind $killOptimizeIfTrue.dos-reis4-14/+27
(compWithMappingMode): Likewise. (compUnnamedMapping): Likewise. (extractCode): Simplify. * interp/g-opt.boot (optClosure): New. Register. (semiSimpleRelativeTo?): An abstraction is always semisimple. * interp/nruncomp.boot ($killOptimizeIfTrue): Remove. (optDeltaEntry): Don't test for it.
2012-02-25 * interp/compiler.boot (extractCode): Rename fromdos-reis2-7/+13
extractCodeAndConstructTriple. Change Arity. Tidy. Adjust callers.
2012-02-25 * interp/compiler.boot (finishLambdaExpression): Use %closure.dos-reis4-6/+12
(extractCodeAndConstructTriple): Likewise. * interp/g-opt.boot (optCall): Adjust.
2012-02-25 * interp/nruncomp.boot (genDeltaEntry): Fix thinko.dos-reis2-1/+5
2012-02-25 * algebra/catdef.spad.pamphlet (BinaryOperatorCategory): New.dos-reis9-20031/+20272
(BinaryOperation): Likewise. (IdempotentOperatorCategory): Likewise. (SemiGroupOperatorCategory): Likewise. (SemiGroupOperation): Likewise. (MonoidOperatorCategory): Likewise. (MonoidOperation): Likewise. * algebra/exposed.lsp.pamphlet: Expose them. * algebra/Makefile.in (oa_algebra_layer_0): Include IDEMOPC, SGPOPC, SPGOP, MONOPC, BINOPC. (axiom_algebra_layer_1): Include MONOP.
2012-02-24 * interp/lexing.boot: "assume" is now also a keyword for the compiler.dos-reis3-2/+21
* interp/spad-parser.boot (parseCategory): Accept exported properties. (parseFormula): New.
2012-02-23 * interp/nruncomp.boot (genDeltaEntry): Replace applyFun with %apply.dos-reis5-13/+19
* interp/lisp-backend.boot (expandApply): Remove. Unregister expander. * interp/g-opt.boot (optCall): applyFun is not longer an opcode. Look for %apply. * interp/compiler.boot (applyMapping): Generate ['%call,['%apply,.]] form, not ['%apply,..] form. (extractCodeAndConstructTriple): Tidy. (compApplication): Likewise.
2012-02-20 * interp/lexing.boot (getNumberToken): New.dos-reis5-117/+114
(getArgumentDesignator): Likewise. (getToken): Use it. * interp/parsing.lisp (GET-NUMBER-TOKEN): Remove. * interp/bootlex.lisp (INIT-BOOT/SPAD-READER): Move to spad.lisp. (SPAD): Likewise. (READ-SPAD1): Likewise. (TEST): Remove. (GET-ARGUMENT-DESIGNATOR-TOKEN): Likewise.
2012-02-19 * interp/compiler.boot (compBuiltinDomain): Compute the exportsdos-reis3-6/+16
from parentsOfBuiltinInstance. * interp/buildom.boot (parentsOfBuiltinInstance): Tidy.
2012-02-19 * interp/compiler.boot (compBuiltinDomain): Rename from compCat.dos-reis2-5/+9
2012-02-19 * interp/br-data.boot (libConstructorSig): Rename T$ to T fordos-reis7-10/+12
external name printing. Do not call ncParseFromString.
2012-02-15 * algebra/catdef.spad.pamphlet (Ring): Extends SemiRing.dos-reis9-19233/+19292
(Dioid): New. Extend OrderedAbelianMonoid and SemiRing. * algebra/exposed.lsp.pamphlet: Expose Dioid.
2012-02-15tidy src/algebra/Makefile.indos-reis3-11/+16
2012-02-13 * interp/g-util.boot (stripTags): Rename from stripUnionTags.dos-reis9-17/+72
Adjust callers. * interp/database.boot (genericInstanceForm): New. * interp/buildom.boot (parentsOfBuiltinInstance): New. (builtinInstanceForm): Likewise. * interp/br-data.boot (genericParentsOf): New. (parentsOfForm): Use it, (ancestorsRecur): Likewise. * interp/br-con.boot (originInOrder): Use parentsOfForm.
2012-02-13 * interp/define.boot (getCatAncestors): Remove. Adjust caller.dos-reis2-5/+9
(depthAssoc): Tidy. (NRTmakeCategoryAlist): Tidy.
2012-02-13 * interp/define.boot (NRTcatCompare): Remove.dos-reis2-5/+8
(NRTmakeCategoryAlist): Don't call NRTcatCompare. Tidy.
2012-02-12 * interp/define.boot (depthAssocList): Take the cache as seconddos-reis2-12/+17
argument. Avoid globals. Adjust Callers. (depthAssoc): Likewise. Adjust Caller. (NRTmakeCategoryAlist): Remove uses of $depthAssocCache.
2012-02-12 * algebra/coerce.spad.pamphlet (Type): Redefine as empty Join.dos-reis3-4/+9
* interp/category.boot (Join): Handle empty argument list.
2012-02-12 * interp/define.boot (getParentsFor): Lose second parameter. Tidy.dos-reis3-37/+32
Adjust callers. * interp/br-data.boot (getParentsForDomain): Remove. (parentsOf): Call getParentsFor in lieu of getParentsForDomain. (folks): Move to define.boot.
2012-02-12 * interp/br-data.boot (ancestorsRecur): Tidy.dos-reis3-7/+10
* interp/define.boot (compDefineCategory2): Likewise.
2012-02-11 (ancestorsRecur): Likewise.dos-reis2-4/+4
2012-02-11 * interp/br-data.boot (getParentsFor): Move to define.boot.dos-reis2-3/+3
(explodeIfs): Likewise. (getParentsForDomain): Tidy.
2012-02-11 * interp/br-data.boot (getParentsFor): Move to define.boot.dos-reis3-37/+29
(explodeIfs): Likewise.
2012-02-10 * interp/define.boot (mkEvalableCategoryForm): Compile onlydos-reis2-7/+13
CATEGORY and SubsetCategory forms.
2012-02-10 * interp/database.boot (categoryConstructor?): New.dos-reis3-6/+13
* interp/define.boot (mkEvalableCategoryForm): Use it. Tidy.
2012-02-09 * interp/g-opt.boot (optCall): Simplify SPADCALL of atomicdos-reis2-5/+16
function expressions. ($VMsideEffectFreeOperators): Don't include %funcall. ($simpleVMoperators): Include it.
2012-02-07 * algebra/Makefile.in (oa_algebra_layer_0): Include FINITE-.dos-reis2-1/+5
2012-02-07 * interp/lisplib.boot (dbLocateModule): New.dos-reis9-18717/+18795
(findModule): Use it. Simplify. (loadLib): Tidy. (genericLoadDB): New. (loadDB): Use it. (loadDBIfCan): New. * interp/c-util.boot (lookupDefiningFunction): Give up gracefully if the domain of computation is not compiled yet. * algebra/Makefile.in ($(OUT)/SPADAST.$(FASLEXT)): Require $(OUT)/SUCHTAST.$(FASLEXT).
2012-02-05 * interp/nruncomp.boot (getLocalIndex): Fast track niladicdos-reis4-8/+11
constructors. * algebra/syntax.spad.pamphlet: Miscellaneous cleanup.
2012-02-03 * config/open-axiom.m4 (OPENAXIOM_ALIGNAS_SPECIFIER): New.dos-reis9-18653/+18740
(OPENAXIOM_CHECK_MISC): Use it. src/ * utils/vm.H: Add more VM data structures. * utils/vm.cc (BasicContext::make_operator): Define. * algebra/Makefile.in (SPADFILES): Include syntax.spad and spad-parser.spad.
2012-01-14 * algebra/catdef.spad.pamphlet (Finite) [random]: Provide defaultdos-reis8-18724/+18709
implementation. * algebra/boolean.spad.pamphlet (KleeneTrivalentLogic): Now satisfy Finite. Use Maybe Boolean as representation.
2012-01-14 * interp/i-util.boot ($intTopLevel): Move to sys-constants.boot.dos-reis5-12/+16
* interp/g-error.boot (returnToTopLevel): Tidy. * interp/macros.lisp (applyWithOutputToString): Likewise.
2012-01-14 * interp/spaderror.lisp: Move convent to spad.lisp. Remove.dos-reis4-111/+63
2012-01-14 * interp/patches.lisp: Move content to msgdb.boot. Remove.dos-reis5-79/+32
2012-01-14 * interp/word.boot: Add import and scope statements. Include indos-reis8-50/+30
final executables. (infix?): Remove as duplicate in match.boot. (prefix?): Likewise. (suffix?): Likewise. * interp/g-error.boot (returnToTopLevel): Tidy. * interp/debug.lisp (/D-2): Use spadThrow in lieu of UNWIND. * interp/patches.lisp (CATCHALL): Remove. (DBRINIT): Likewise. (TOPLEVEL): Likewise. (TOP-LEVEL): Likewise. (UNWIND): Likewise. (RESUME): Likewise. (booFind): Likewise.