aboutsummaryrefslogtreecommitdiff
path: root/src/interp/i-intern.boot
AgeCommit message (Collapse)AuthorFilesLines
2007-12-12 * compiler.boot (comp3): Use isQuasiquote.dos-reis1-2/+35
(compSymbol): Use condition type view for non Union objects. (getUniqueCaseView): New. Subroutine of compSymbol. (compForm2): Don't infer type for flag parameter through unique compilcation. (checkCallingConvention): New. (compileQuasiquote): coerce, don't convert. (compCase1): Handle non Union type object through modemap selection. (maybeSpliceMode): New. Subroutine of compCase1. Register special form compiler with their names, not pointers. * define.boot (candidateSignatures): New. (hasSigInTargetCategory): Use it. Tidy. (checkAndDeclare): Use isQuasiquote. (spadCompileorSetq): Rename non atomic parameters before calling LISP compiler. * g-util.boot (quasiquote): New. (isQuasiquote): Likewise. * i-intern.boot (flagArguments): New. (signatureFromModemap): Likewise. (mkAtree3): Use them. Handle functions taking flag arguments. * i-object.boot (getFlagArgsPos): New. * i-spec1.boot (userDefinedCase): Now prepare form and hands back to bottomUp. (upcase): Adjust call to userDefinedCase. * modemap.boot (addDomain): Don't add flag domains to the environment. * nruncomp.boot (NRTencode): Handle flag values. (NRTgetLocalIndex1): Likewise. * nrunfast.boot (lazyMatch): Likewise. (newExpandLocalTypeForm): Likewise. * sys-constants.boot ($DummyFunctorNames): Include quasiquote constructor. * template.boot (NRTaddInner): Handle flag values.
2007-12-08 Add support for quasiquotation.dos-reis1-0/+1
* 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-11-22 * i-analy.boot: Globally substtitue %noMapVal for noMapVal.dos-reis1-1/+1
* i-intern.boot: Likewise. * i-map.boot: Likewise. * i-spec2.boot: Likewise. * i-spec1.boot: Likewise.
2007-11-22 * as.boot: Globally substitute %noBranch for noBranch.dos-reis1-2/+2
* 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-11-07remove more pamphletsdos-reis1-0/+455