aboutsummaryrefslogtreecommitdiff
path: root/src/interp
AgeCommit message (Collapse)AuthorFilesLines
2011-02-06cleanup special hyperbolic builtinsdos-reis3-33/+4
2011-02-06 * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %fmanexp.dos-reis4-13/+42
(sideEffectFree?): New. (varIsAssigned): Tidy. (canInlineVarDefinition): Likewise. * interp/boot-pkg.lisp (gensym?): New. * interp/c-util.boot ($NonExpandableOperators): New. (expandableDefinition?): Use it. * algebra/sf.spad.pamphlet (DoubleFloat): Use %fmanexp.
2011-02-05 * interp/g-opt.boot ($VMsideEffectFreeOperators): Include inversedos-reis2-4/+63
hyperbolic functions. * interp/lisp-backend.boot: Expand them. * algebra/sf.spad.pamphlet: Use them.
2011-02-05 * interp/g-opt.boot ($VMsideEffectFreeOperators): Remove CGREATERPdos-reis2-31/+65
and GGREATERP. Add VM-level complex number operators. * interp/lisp-backend.boot: Expand them. * algebra/gaussian.spad.pamphlet (ComplexCategory): Use VM form instead of Lisp level forms. * algebra/pfr.spad.pamphlet (PartialFraction): Likewise. * algebra/si.spad.pamphlet (SingleInteger): Likewise. * algebra/symbol.spad.pamphlet (Symbol): Likewise.
2011-02-04 * interp/g-opt.boot ($VMsideEffectFreeOperators): Remove more Lispdos-reis2-8/+10
level operators. Include %property and %bitveclt. * interp/lisp-backend.boot: Expand them. * algebra/si.spad.pamphlet (SingleInteger): Tidy. Use %ismall?. * algebra/domain.spad.pamphlet (DomainConstructo): Use %property. * algebra/outform.spad.pamphlet (OutputForm): Likewise. * algebra/boolean.spad.pamphlet (IndexedBits): Use %bitveclt.
2011-02-04cleanu updos-reis6-28/+28
2011-02-04 * interp/c-util.boot (mutateConditionalFormWithUnaryFunction):dos-reis1-16/+16
Rename from mutateCONDFormWithUnaryFunction. Update callers (mutateBindingFormWithUnaryFunction): Rename from mutateLETFormWithUnaryFunction. Allow %bind form too. Update callers.
2011-02-03 * interp/c-util.boot: Replace COND with %when throught.dos-reis18-103/+107
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.
2011-02-03 * interp/slam.boot (reportFunctionCompilation): Use %otherwise,dos-reis5-13/+14
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.
2011-02-03 * interp/compiler.boot (finishLambdaExpression): Tidy. Don'tdos-reis1-13/+8
generate Lisp code directly. (canReturn): Don't look into CLOSEDFN forms.
2011-02-02 * interp/clam.boot: Tidy.dos-reis2-46/+46
* interp/slam.boot: Likewise.
2011-02-02 * interp/lisp-backend.boot: New file. Consolidate Common Lispdos-reis5-574/+615
backend module. * interp/Makefile.in (OBJS): Include it. (lisp-backend.$(FASLEXT)): New rule.
2011-02-01 * interp/nrunopt.boot (NRTgetLookupFunction): Explain reason fordos-reis1-3/+4
non-extension.
2011-02-01 * interp/compiler.boot (compList): Use %nil form, not NIL.dos-reis2-6/+6
2011-02-01 * interp/g-opt.boot (optCallSpecially): Remove.dos-reis3-34/+10
(optSpeciallCall): Likeise. (optCall): Adjust. (optCallEval): Move to wi2.boot, sole user.
2011-01-31 * interp/g-opt.boot (optQSMINUS): Remove.dos-reis2-10/+4
* algebra/data.spad.pamphlet: Tidy. * algebra/plot.spad.pamphlet: Likewise. * algebra/plot3d.spad.pamphlet: Likewise. * algebra/si.spad.pamphlet: Likewise. * algebra/syntax.spad.pamphlet: Likewise. * algebra/list.spad.pamphlet: Remove use of NULL$Lisp.
2011-01-31 * interp/g-opt.boot ($VMsideEffectFreeOperators): Remove QCDR,dos-reis2-22/+26
QCAR. SYMBOLP, GREATERP. Add %ibit, %ilength, %ident, %equal. * interp/g-util.boot: Expand them * algebra/any.spad.pamphlet: Tidy. * algebra/catdef.spad.pamphlet: Likewise. * algebra/data.spad.pamphlet: Likewise. * algebra/domain.spad.pamphlet: Likewise. * algebra/float.spad.pamphlet: Likewise. * algebra/fname.spad.pamphlet: Likewise. * algebra/integer.spad.pamphlet: Likewise. * algebra/list.spad.pamphlet: Likewise. * algebra/outform.spad.pamphlet: Likewise. * algebra/random.spad.pamphlet: Likewise. * algebra/sex.spad.pamphlet: Likewise. * algebra/si.spad.pamphlet: Likewise. * algebra/symbol.spad.pamphlet: Likewise. * algebra/syntax.spad.pamphlet: Likewise.
2011-01-31 * interp/vmlisp.lisp: Remove QREFELT, QSDEC1, QSETREFV, QSETVELT,dos-reis10-37/+12
QSETVELT-1, QSINC1, QVELT, QVELT-1. * algebra/si.spad.pamphlet: Use %iinc and %idec forms.
2011-01-27Generate SVREF for simple vector slot refs.dos-reis10-62/+64
2011-01-27 * interp/nruncomp.boot (NRTputInHead): Tidy.dos-reis1-6/+3
2011-01-26Use %veclit formsdos-reis4-9/+9
2011-01-26 Replace more occurences of LIST with %listlit.dos-reis12-41/+41
2011-01-26 * interp/g-util.boot (expandListlit): Tidy.dos-reis1-2/+7
2011-01-26 * interp/compiler.boot (compForm1): Use %listlit form.dos-reis8-30/+35
(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.
2011-01-24 * interp/g-opt.boot (optMkRecord): Generate %makepair forms.dos-reis2-4/+8
($VMsideEffectFreeOperators): Include %listlit and %veclit. * interp/g-util.boot: Translate them.
2011-01-24 * algebra/array1.spad.pamphlet: Use %aref instead of %vref.dos-reis2-9/+10
* interp/g-opt.boot (optSETRECORDELT): Tidy code generation. (optRECORDCOPY): Likewise. (optRECORDELT): Likewise. ($VMsideEffectFreeOperators): Include %aref. Translate.
2011-01-19 * interp/vmlisp.lisp (FIXP): Remove.dos-reis25-77/+77
* 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.
2011-01-03(no commit message)dos-reis1-2/+2
2011-01-03 * interp/g-util.boot: Expand new bit vector operators.dos-reis4-13/+78
* interp/g-opt.boot (opt2bit): New. (opt2bool): Likewise. * interp/bits.lisp (BVEC-SIZE): Remove. (BVEC-COPY): Likewise. (BVEC-CONCAT): Likewise. (BVEC-EQUAL): Likewise. (BVEC-AND): Likewise. (BVEC-OR): Likewise. (BVEC-XOR): Likewise. (BVEC-NAND): Likewise. (BVEC-NOR): Likewise. (BVEC-NOT): Likewise. * algebra/boolean.spad.pamphlet (IndexedBits): Remove uses of Lisp-level functions.
2011-01-02 * interp/nrunfast.boot (evalSlotDomain): Expand to VM forms beforedos-reis4-13/+26
value argument evaluation. (lazyMatch): Check for %llength too. * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %2bit and %2bool. * interp/g-util.boot: Expand them. * interp/define.boot (compJoin): Check for %llenght too. * algebra/boolean.spad.pamphlet: Tidy. * algebra/domain.spad.pamphlet: Likewise. * algebra/draw.spad.pamphlet: Likewise. * algebra/files.spad.pamphlet: Likewise. * algebra/list.spad.pamphlet: Likewise. * algebra/outform.spad.pamphlet: Likewise. * algebra/sex.spad.pamphlet: Likewise. * algebra/sf.spad.pamphlet: Likewise.
2011-01-02Remove uses of SETF in Boot codesdos-reis8-45/+43
2011-01-01Symbol cleanupsdos-reis8-16/+16
2010-12-31 * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %cup anddos-reis3-15/+22
%cdown. * interp/g-util.boot: Expand them. * interp/vmlisp.lisp (QESET): Remove. * algebra/string.spad.pamphlet (String): Don't use QESET.
2010-12-31 * interp/g-opt.boot ($VMsideEffectFreeOperators): Include newdos-reis2-1/+14
builtin functions %strlt, %streq, %strcopy, and %strconc. * interp/g-util.boot: Expand them. * algebra/string.spad.pamphlet (String): Remove uses of Lisp-level functions CHAR, EQUAL, CHAR=, ans SXHASH.
2010-12-30more string cleanupsdos-reis21-70/+77
2010-12-30 * interp/vmlisp.lisp (QSTRING): Remove.dos-reis4-8/+3
(QSTRINGLENGTH): Likewise. (STRINGLENGTH): Likewise. * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %i2s. * interp/g-util.boot: Expand it. * interp/debug.lisp (/LOCATE): Replace STRINGLENGTH with LENGTH. * algebra/fortran.spad.pamphlet: Don't use STRINGIMAGE from Lisp. * algebra/generic.spad.pamphlet: Likewise. * algebra/naalg.spad.pamphlet: Likewise. * algebra/naalgc.spad.pamphlet: Likewise. * algebra/outform.spad.pamphlet: Likewise. * algebra/string.spad.pamphlet: Likewise.
2010-12-30more char cleanupdos-reis2-53/+33
2010-12-29 * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %strlength.dos-reis4-22/+24
* interp/g-util.boot: Expand it. * algebra/string.spad.pamphlet (String): Remove use of QCSIZE.
2010-12-29(no commit message)dos-reis9-19/+18
2010-12-29SUBSTRING cleanupdos-reis45-284/+290
2010-12-28Character constants clean updos-reis17-47/+48
2010-12-28more cleanupdos-reis1-3/+3
2010-12-28Clean updos-reis13-22/+22
2010-12-19more cleanupdos-reis9-52/+49
2010-12-19 * interp/vmlisp.lisp (VECP): Remove.dos-reis35-120/+112
(REFVECP): Likewise. (CVECP): Likewise. (QMEMQ): Likewise. * interp/bootlex.lisp (TRANSLABEL1): Adjust. * interp/br-search.boot: Likewise. * interp/br-util.boot: Likewise. * interp/c-doc.boot: Likewise. * interp/category.boot: Likewise. * interp/database.boot: Likewise. * interp/debug.lisp: Likewise. * interp/format.boot: Likewise. * interp/functor.boot: Likewise. * interp/g-cndata.boot: Likewise. * interp/g-util.boot: Likewise. * interp/ggreater.lisp: Likewise. * interp/guess.boot: Likewise. * interp/i-coerfn.boot: Likewise. * interp/i-map.boot: Likewise. * interp/i-output.boot: Likewise. * interp/i-resolv.boot: Likewise. * interp/i-spec2.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/interop.boot: Likewise. * interp/i-util.boot: Likewise. * interp/union.lisp: Likewise. * interp/trace.boot: Likewise. * interp/pspad2.boot: Likewise. * interp/pathname.boot: Likewise. * interp/nrunopt.boot: Likewise. * interp/nrunfast.boot: Likewise. * interp/nruncomp.boot: Likewise. * interp/newfort.boot: Likewise. * interp/msgdb.boot: Likewise. * interp/msg.boot: Likewise. * interp/match.boot: Likewise. * interp/word.boot: Likewise.
2010-12-19cleanupdos-reis4-8/+9
2010-12-16 * interp/format.boot (form2String1): Handle string literalsdos-reis1-0/+3
masquerading as constructors.
2010-12-16 * interp/format.boot: More fixes for confusion between strings anddos-reis1-21/+21
symbols.
2010-12-15 * interp/format.boot (formDecl2String): Tidy.dos-reis3-5/+8
* interp/i-toplev.boot (printTypeAndTimeNormal): Likewise. * interp/msgdb.boot (applyPrefix2String): Likewise.
2010-12-15 * interp/msgdb.boot (applyPrefix2String): New.dos-reis2-6/+16
(substituteSegmentedMsg): Use to implement documented behaviour of formatting code P. * interp/i-analy.boot (printableArgModeSetList): Don't call prefix2String here. (bottomUpForm0): Likewise.