Age | Commit message (Collapse) | Author | Files | Lines |
|
%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.
|
|
* 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.
|
|
* 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.
|
|
loopBody and loopExit are not selectors.
* interp/i-output.boot: Include sys-utility.
* interp/sys-utility.boot (last): New macro.
(loopBody): Likewise.
* interp/vmlisp.lisp (LASTNODE): Remove.
(LASTPAIR): Likewise.
(last): Do not define here.
|
|
* boot/utility.boot (drop): Define and export.
(take): Likewise.
* interp/br-con.boot: Use take, not TAKE; use drop, not DROP.
* interp/br-data.boot: Likewise.
* interp/br-op1.boot: Likewise.
* interp/br-saturn.boot: Likewise.
* interp/c-doc.boot: Likewise.
* interp/c-util.boot: Likewise.
* interp/cattable.boot: Likewise.
* interp/clammed.boot: Likewise.
* interp/compiler.boot: Likewise.
* interp/database.boot: Likewise.
* interp/define.boot: Likewise.
* interp/guess.boot: Likewise.
* interp/htsetvar.boot: Likewise.
* interp/i-analy.boot: Likewise.
* interp/i-eval.boot: Likewise.
* interp/i-funsel.boot: Likewise.
* interp/i-map.boot: Likewise.
* interp/i-output.boot: Likewise.
* interp/i-special.boot: Likewise.
* interp/i-syscmd.boot: Likewise.
* interp/i-toplev.boot: Likewise.
* interp/i-util.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/parse.boot: Likewise.
* interp/record.boot: Likewise.
* interp/setvars.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/trace.boot: Likewise.
* interp/word.boot: Likewise.
* interp/macros.lisp (DROP): Remove.
(TAKE): Likewise.
|
|
* interp/g-opt.boot: Likewise.
* interp/i-map.boot: Likewise.
* interp/i-special.boot: Likewise.
* interp/lisp-backend.boot: Likewise.
* interp/slam.boot: Likewise.
|
|
(optSeq,getRidOfTemps): Likewise.
(optSeq): Rewrite.
* interp/slam.boot (compileRecurrenceRelation): Tidy.
|
|
* interp/define.boot (compDefineCategory2): Likewise.
* interp/nruncomp.boot (buildFunctor): Likewise.
* interp/slam.boot (compileRecurrenceRelation): Likewise.
* interp/lisp-backend.boot (expandSeq): Use PROGN in absence of EXIT.
|
|
* interp/functor.boot: Likewise.
* interp/g-util.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/topics.boot: Likewise.
* interp/trace.boot: Likewise.
|
|
Adjustt caller.
(incompleteFunctorBody): Likewise.
* interp/bc-matrix.boot: Use toString instead of STRINGIMAGE where
appropriate.
* interp/bc-solve.boot: Likewise.
* interp/bc-util.boot: Likewise.
* interp/br-con.boot: Likewise.
* interp/br-op1.boot: Likewise.
* interp/br-saturn.boot: Likewise.
* interp/c-doc.boot: Likewise.
* interp/c-util.boot: Likewise.
* interp/clam.boot: Likewise.
* interp/format.boot: Likewise.
* interp/functor.boot: Likewise.
* interp/g-timer.boot: Likewise.
* interp/htsetvar.boot: Likewise.
* interp/i-funsel.boot: Likewise.
* interp/i-map.boot: Likewise.
* interp/i-output.boot: Likewise.
* interp/i-resolv.boot: Likewise.
* interp/i-special.boot: Likewise.
* interp/i-syscmd.boot: Likewise.
* interp/i-util.boot: Likewise.
* interp/msg.boot: Likewise.
* interp/newfort.boot: Likewise.
* interp/parse.boot: Likewise.
* interp/pathname.boot: Likewise.
* interp/setvars.boot: Likewise.
* interp/showimp.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/trace.boot: Likewise.
|
|
(mkUsersHashTable): Likewise.
(mkDependentsHashTable): Likewise.
(domainsOf): Likewise.
* interp/br-op1.boot (dbShowOpAllDomains): Likewise.
* interp/cattable.boot (showCategoryTable): Likewise.
(displayCategoryTable): Likewise.
(simpTempCategoryTable): Likewise.
(simpCategoryTable): Likewise.
(genTempCategoryTable): Likewise.
(compressHashTable): Likewise.
(updateCategoryTableForCategory): Likewise.
(clearTempCategoryTable): Likewise.
* interp/clam.boot (displayHashtable): Likewise.
(reportHashCacheStats): Likewise.
(reportInstantiations): Likewise.
(globalHashtableStats): Likewise.
* interp/guess.boot (buildWordTable): Likewise.
* interp/i-syscmd.boot (writify): Likewise.
* interp/scan.boot (scanDictCons): Likewise.
(scanPunCons): Likewise.
* interp/slam.boot (hashCount): Likewise.
* interp/topics.boot (mkTopicHashTable): Likewise.
(addTopic2Documentation): Likewise.
(topics): Likewise.
(listOfTopics): Likewise.
* interp/word.boot (buildWordTable): Likewise.
(writeFunctionTables): Likewise.
(bootSearch): Likewise.
|
|
* interp/c-util.boot: Use vector instead of LIST2VEC.
* interp/define.boot: Likewise.
* interp/i-coerce.boot: Likewise.
* interp/i-coerfn.boot: Likewise.
* interp/i-funsel.boot: Likewise.
* interp/i-map.boot: Likewise.
* interp/i-special.boot: Likewise.
* interp/interop.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/slam.boot: Likewise.
|
|
|
|
|
|
of HGET. Use tableLength instead of HCOUNT.
|
|
|
|
|
|
* interp/c-util.boot: Likewise.
* interp/cattable.boot: Likewise.
* interp/compiler.boot: Likewise.
* interp/define.boot: Likewise.
* interp/format.boot: Likewise.
* interp/functor.boot: Likewise.
* interp/hashcode.boot: Likewise.
* interp/i-output.boot: Likewise.
* interp/i-syscmd.boot: Likewise.
* interp/lisplib.boot: Likewise.
* interp/modemap.boot: Likewise.
* interp/rulesets.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/sys-macros.lisp (APPLYR, TAILFN, TAIL, rplac): Remove as
unused.
|
|
|
|
(append!): Likewise.
* boot/tokens.boot: Do not translate nconc.
|
|
* boot/utility.boot (reverse!): Define.
* boot/parser.boot: Use reverse! instead of NREVERSE.
* boot/ast.boot: Generate reverse! forms instead of NREVERSE.
|
|
|
|
|
|
|
|
|
|
Use %otherwise instead of %true where appropriate.
* interp/define.boot: Likewise.
* interp/functor.boot: Likewise.
* interp/g-opt.boot: Likewise.
* interp/i-code.boot: Likewise.
* interp/i-output.boot: Likewise.
* interp/i-spec1.boot: Likewise.
* interp/i-spec2.boot: Likewise.
* interp/i-util.boot: Likewise.
* interp/info.boot: Likewise.
* interp/modemap.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/pspad1.boot: Likewise.
* interp/pspad2.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/wi1.boot: Likewise.
* interp/wi2.boot: Likewise.
* interp/compiler.boot (canReturn): Don't test for COND anymore.
|
|
not %true for default cases.
(reportFunctionCacheAll): Likewise.
(compileRecurrenceRelation): Likewise.
* interp/lisp-backend.boot (expandTry): Tidy.
* interp/g-opt.boot ($VMsideEffectFreeOperators): Include %otherwise.
* interp/compiler.boot (compAlternativeGuard): Emit %otherwise
form, not Lisp level T form.
* interp/clam.boot (compClam): Tidy.
(compHash): Likewise.
(compHashGlobal): Likewise.
|
|
* interp/slam.boot: Likewise.
|
|
QSETVELT-1, QSINC1, QVELT, QVELT-1.
* algebra/si.spad.pamphlet: Use %iinc and %idec forms.
|
|
|
|
(compExpressionList): Likewise.
(compCons1): Likewise.
(compList): Likewise.
(compVector): Likewise.
* interp/g-timer.boot (timedEvaluate): Likewise.
* interp/wi1.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/i-object.boot: Likewise.
* interp/g-opt.boot (optMkRecord): Likewise.
(optRECORDCOPY): Likewise.
(optLIST): Remove.
(optListlit): New.
* interp/g-util.boot (optListlit): New. Expand %listlit forms.
|
|
* interp/alql.boot: Use integer? instead of FIXP.
* interp/br-con.boot: Likewise.
* interp/br-op1.boot: Likewise.
* interp/c-util.boot: Likewise.
* interp/fnewmeta.lisp: Likewise.
* interp/ht-root.boot: Likewise.
* interp/i-analy.boot: Likewise.
* interp/i-syscmd.boot: Likewise.
* interp/i-toplev.boot: Likewise.
* interp/interop.boot: Likewise.
* interp/lisplib.boot: Likewise.
* interp/mark.boot: Likewise.
* interp/newfort.boot: Likewise.
* interp/nrunfast.boot: Likewise.
* interp/pspad1.boot: Likewise.
* interp/setvars.boot: Likewise.
* interp/showimp.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/topics.boot: Likewise.
* interp/trace.boot: Likewise.
* interp/wi1.boot: Likewise.
* interp/wi2.boot: Likewise.
* interp/word.boot: Likewise.
|
|
|
|
|
|
* interp/clam.boot: Likewise.
* interp/define.boot: Likewise.
* interp/format.boot: Likewise.
* interp/functor.boot: Likewise.
* interp/g-opt.boot: Likewise.
* interp/mark.boot: Likewise.
* interp/pspad1.boot: Likewise.
* interp/pspad2.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/wi1.boot: Likewise.
* interp/wi2.boot: Likewise.
* interp/sys-constants.boot: Remove $true and $false as unused.
|
|
remove local modemaps.Likewise.
(clearLocalModemaps): Likewise. Tidy.
(reallyClearLocalModemaps): New. Remove dynamically generated
function definition for internal Lisp-level functions.
|
|
(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.
|
|
* 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.
|
|
(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.
|
|
|
|
* 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.
|
|
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.
|
|
access and set the global value of the variable holding the cache
state.
* interp/g-util.boot: Add more middle end form expanders.
|
|
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.
|
|
%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.
|
|
* boot/ast.boot: Replace GENSYM with gensym.
* interp/buildom.boot: Likewise.
* interp/clam.boot: Likewise.
* interp/clammed.boot: Likewise.
* interp/compiler.boot: Likewise.
* interp/define.boot: Likewise.
* interp/fortcall.boot: Likewise.
* interp/g-opt.boot: Likewise.
* interp/i-coerce.boot: Likewise.
* interp/i-coerfn.boot: Likewise.
* interp/i-funsel.boot: Likewise.
* interp/i-map.boot: Likewise.
* interp/i-spec1.boot: Likewise.
* interp/i-spec2.boot: Likewise.
* interp/macex.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/nrunopt.boot: Likewise.
* interp/parse.boot: Likewise.
* interp/pf2atree.boot: Likewise.
* interp/pf2sex.boot: Likewise.
* interp/postpar.boot: Likewise.
* interp/ptrees.boot: Likewise.
* interp/server.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/sys-constants.boot: Likewise.
* interp/wi1.boot: Likewise.
* interp/wi2.boot: Likewise.
|
|
* interp/word.boot: Use it.
* interp/topics.boot: Likewise.
* interp/sys-driver.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/setvars.boot: Likewise.
* interp/scan.boot: Likewise.
* interp/nrunopt.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/newfort.boot: Likewise.
* interp/mark.boot: Likewise.
* interp/interop.boot: Likewise.
* interp/i-toplev.boot: Likewise.
* interp/i-syscmd.boot: Likewise.
* interp/htcheck.boot: Likewise.
* interp/guess.boot: Likewise.
* interp/g-util.boot: Likewise.
* interp/database.boot: Likewise.
* interp/compress.boot: Likewise.
* interp/clam.boot: Likewise.
* interp/cattable.boot: Likewise.
* interp/c-util.boot: Likewise.
* interp/br-op2.boot: Likewise.
* interp/br-op1.boot: Likewise.
* interp/br-con.boot: Likewise.
* interp/sys-globals.boot ($ConstructorCache): Move elsewhere.
($instantRecord): Likewise.
* algebra/newdata.spad.pamphlet: Use EQUAL as equality function
for hash table.
* algebra/table.spad.pamphlet: Call hashTable builtin function
instead of MAKE-HASHTABLE.
|
|
|
|
|
|
|