aboutsummaryrefslogtreecommitdiff
path: root/src/interp/pf2sex.boot
AgeCommit message (Collapse)AuthorFilesLines
2008-12-082008-12-07 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis1-0/+9
* 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-08-09 * interp/pf2sex.boot (pf2Sex1): Handle more ASTs.dos-reis1-8/+13
(pfType2SexOrNil): New. (pfDoc2SexOrNil): Likewise. (pfWith2Sex): Likewise. (pfAdd2Sex): Likewise. (pfWDeclare2Sex): Likewise. (pfAttribute2Sex): Likewise. (pfWIf2Sex): Likewise. (pfExport2Sex): Likewise. (pfInline2Sex): Likewise. (pfImport2Sex): Likewise. (pfQualType2Sex): Likewise. * interp/ptrees.boot (pf0InlineItems): New. * interp/i-spec2.boot (up%Import): New. (sorry): Likewise. (up%Export): Likewise. (up%Inline): Likewise. (up%With): Likewise. (up%Add): Likewise. * interp/i-intern.boot (mkAtree3): Handle %Inline, %With, %Add, and %Export. * interp/i-spec1.boot ($specialOps): Adjust. * doc/msgs/s2-us.msgs (S2IP0006): New.
2008-08-09 * include/open-axiom.h (OPENAXIOM_HAVE_GRAPHICS): Define.dos-reis1-0/+46
* sman/sman.c (process_arguments): Use it. (process_arguments): Likewise.
2008-08-09 * interp/buildom.boot: Rename AST code LET to %LET throughout.dos-reis1-1/+1
* interp/c-util.boot: Likewise. * interp/comp.lisp: Likewise. * interp/compiler.boot: Likewise. * interp/cparse.boot: Likewise. * interp/def.lisp: Likewise. * interp/define.boot: Likewise. * interp/functor.boot: Likewise. * interp/g-opt.boot: Likewise. * interp/i-eval.boot: Likewise. * interp/i-intern.boot: Likewise. * interp/i-map.boot: Likewise. * interp/i-spec1.boot: Likewise. * interp/i-spec2.boot: Likewise. * interp/iterator.boot: Likewise. * interp/mark.boot: Likewise. * interp/newaux.lisp: Likewise. * interp/nruncomp.boot: Likewise. * interp/nrunopt.boot: Likewise. * interp/package.boot: Likewise. * interp/parse.boot: Likewise. * interp/pf2atree.boot: Likewise. * interp/pf2sex.boot: Likewise. * interp/postpar.boot: Likewise. * interp/property.lisp: Likewise. * interp/pspad1.boot: Likewise. * interp/pspad2.boot: Likewise. * interp/slam.boot: Likewise. * interp/spad.lisp: Likewise. * interp/wi1.boot: Likewise. * interp/wi2.boot: Likewise.
2008-08-09 * interp/pf2sex.boot (pfMacro2Sex): New.dos-reis1-4/+9
(pfMLambda2Sex): Likewise. (pf2Sex1): Use them. * interp/i-spec2.boot ($VoidValueObject): New. ($VoidCodeObject): Likewise. (setValueToVoid): Likewise. (setCodeToVoid): Likewise. (upDEF): Call setValueToVoid. (upfree): Call setCodeToVoid (uplocal): Likewise. (interpIF): Call setValueToVoid. (up%Macro): New. (up%MLambda): Likewise. * interp/i-spec1.boot ($specialOps): Add %Macro and %MLambda. * interp/macex.boot (macMacro): Really return the original macro as the documentation says.
2008-08-08 * interp/pf2sex.boot (pfApplication2Sex): Don't transform ">",dos-reis1-6/+0
"=>", and "<=" expressions.
2008-08-04 * interp/pf2sex.boot: Replace CAR with first, and CARD with seconddos-reis1-13/+13
throughout.
2008-07-252008-07-24 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis1-5/+7
* interp/scan.boot: Tidy. * interp/ptrees.boot: Define AST for type schemes. * interp/cparse.boot (npType): Parse type schemes. (npQuantifierVariable): New. (npADD): Accept only monotypes. * interp/pf2sex.boot (pf2Sex1): Handle type schemes. (pfQuantified2Sex): New. 2008-07-23 Gabriel Dos Reis <gdr@cs.tamu.edu> * interp/cparse.boot (npMonoType): Rename from npType.
2008-05-08 * boot/translator.boot (bpOutItem): Handle namespace declaration.dos-reis1-1/+1
Update all boot files to use `namespace' instead of `)package'. * interp/: Likewise.
2008-04-23 * boot/ast.boot: Tidy.dos-reis1-1/+1
* boot/includer.boot: Likewise. * boot/parser.boot: Likewise. * boot/pile.boot: Likewise. * boot/scanner.boot: Likewise. * boot/tokens.boot: Likewise. * boot/translator.boot: Likewise. * boot/strap: Update Lisp translation. * lisp/core.lisp.in: Tidy.
2008-03-25 * interp/vmlisp.lisp (DEFINE-FUNCTION): Move boot-pkg.lisp.dos-reis1-1/+1
(BPINAME): Tidy. * interp/slam.boot (reportFunctionCompilation): Tidy. * interp/daase.lisp: Don't use anachronistic SET. * interp/debug.lisp: Likewise. * interp/br-saturn.boot: Substitute GENSYM for GENTEMP. * interp/fortcall.boot: Likewise. * interp/ht-util.boot: Likewise. * interp/pf2sex.boot: Likewise. * interp/server.boot: Likewise. * interp/buildom.boot (UnionEqual): Tidy. (coerceUn2E): Likewise. * interp/boot-pkg.lisp (define-function): Define here. * interp/Makefile.pamphlet (diagnostics.$(FASLEXT)): Tidy. (hash.$(FASLEXT)): Likewise. (vmlisp.$(FASLEXT)): Likewise. * interp/diagnostics.boot: Import "types". * interp/hash.lisp: Import "types" instead of "vmlisp". * interp/i-output.boot ($algebraOutput): Move to sys-globals.boot. (ERROROUTSTREAM): Likewise. (ERRORINSTREAM): Likewise. * interp/macros.lisp ($algebraOutputStream): Don't set here. * interp/patches.lisp ($algebraOutputStream): Don't set here. ($texOutputStream): Likewise. ($fortranOutputStream): Likewise. ($texOutputStream): Likewise. ($formulaOutputStream): Likewise.
2008-02-22 * interp/i-analy.boot (bottomUpFormTuple): Use "tuple" fordos-reis1-12/+9
parse form that are not type instantiations. * interp/i-coerce.boot (coerceInt1): Likewise. * interp/i-intern.boot (mkAtree3): Likewise. (collectDefTypesAndPreds): Likewise. * interp/i-map.boot (args2Tuple): Likewise. (makePattern): Likewise. (canMakeTuple): Likewise. (makeRuleForm): Likewise. (numArgs): Likewise. (combineMapParts): Likewise. (mkMapPred): Likewise. (findLocalVars1): Likewise. * interp/i-output.boot (outputTran): Likewise. * interp/i-spec1.boot ($specialOps): Likewise. (evalUntargetedADEF): Likewise. (upDeclare): Likewise. (declare): Likewise. * interp/i-spec2.boot (upDollarTuple): Likewise. (upLET): Likewise. (isTupleForm): Remove. (uptuple): Rename from upTuple. (upLETWithFormOnLhs): Use "tuple" for parse forms that are not type instantiations. * interp/i-syscmd.boot (displayMacro): Likewise. * interp/pf2atree.boot (pf2Atree1): Likewise. * interp/pf2sex.boot (pf2Sex1): Likewise. (pfApplication2Sex): Likewise. (pfCollectArgTran): Likewise. * interp/ptrees.boot (pfTuple): Likewise. (pfTuple?): Likewise.
2007-12-08 Add support for quasiquotation.dos-reis1-11/+34
* compiler.boot (compileQuasiquote): New function. * fnewmeta.lisp (|PARSE-Enclosure|): Parse quasiquotes too. * i-intern.boot (mkAtree3): Don't evaluate arguments to quasiquote. * i-spec1.boot ($specialOps): Register [||]. (up[||]): Handle quasiquotes. * newaux.lisp: Register `[|' and `|]' as new glyphs. * pf2sex.boot ($insideApplication): Now count the nesting level of application forms. ($insideQuasiquote): New. Count nesting level of quasiquotes. (pfFinishApplication): Ensure application form nesting level is properly decreased. (pfApplication2Sex): Use it. (pfQuasiquotation2Sex): Transform quasiquote forms. (pf2Sex1): Use it. * sys-constants.boot ($Syntax): New.
2007-12-03 * pf2sex.boot (pf2Sex1): Be talkative about why a parse form is Wrong.dos-reis1-1/+1
2007-11-23 * Makefile.pamphlet (topics.$(FASLEXT)): New rule.dos-reis1-0/+1
(alql.$(FASLEXT)): Likewise. (br-prof.$(FASLEXT)): Likewise. (packtran.$(FASLEXT)): Likewise. (macex.$(FASLEXT)): Likewise. (intfile.$(FASLEXT)): Likewise. (compress.$(FASLEXT)): Likewise. (msg.$(FASLEXT)): Likewise
2007-11-22 * as.boot: Globally substitute %noBranch for noBranch.dos-reis1-3/+3
* ax.boot: Likewise. * cattable.boot: Likewise. * compiler.boot: Likewise. * def.lisp: Likewise. * define.boot: Likewise. * functor.boot: Likewise. * g-opt.boot: Likewise. * i-analy.boot: Likewise. * i-intern.boot: Likewise. * i-map.boot: Likewise. * i-object.boot: Likewise. * i-output.boot: Likewise. * i-spec2.boot: Likewise. * info.boot: Likewise. * mark.boot: Likewise. * nrunopt.boot: Likewise. * package.boot: Likewise. * parse.boot: Likewise. * pf2atree.boot: Likewise. * pf2sex.boot: Likewise. * postpar.boot: Likewise. * pspad2.boot: Likewise. * wi2.boot: Likewise.
2007-10-15remove more pamphlets from interp/dos-reis1-0/+463
2007-09-20Revert commits to the wrong tree.dos-reis1-461/+0
2007-09-20remove pamphlets - part 7dos-reis1-0/+461