Age | Commit message (Collapse) | Author | Files | Lines |
|
* 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.
|
|
(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.
|
|
* 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.
|
|
Update all boot files to use `namespace' instead of `)package'.
* interp/: Likewise.
|
|
* 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.
|
|
Attribute, Signature, and Reduce.
* interp/postpar.boot: Likewise.
* interp/ptrees.boot: Likewise. Tidy.
* interp/Makefile.pamphlet (ptrees.$(FASLEXT)): Don't compile as
Old Boot.
|
|
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.
|
|
|