aboutsummaryrefslogtreecommitdiff
path: root/src/interp/i-spec1.boot
AgeCommit message (Collapse)AuthorFilesLines
2008-01-26 * interp/database.boot: Tidy uses of $EmptyEnvironment.dos-reis1-1/+3
* interp/i-map.boot: Likewise. Allocate fresh cell for $env. * interp/i-spec1.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/i-toplev.boot: Likewise. * interp/lisplib.boot: Likewise. * interp/setvars.boot: Likewise. * interp/sys-globals.boot: Likewise. * interp/nruncomp.boot: Encode flag types too. * interp/template.boot: Likewise. * share/algebra: Update databases.
2008-01-25 Fix AW/272dos-reis1-2/+2
* interp/i-spec1.boot (compileADEFBody): Don't evaluate unnamed functions. Compile them instead. * testsuite/interpreter/aw-272.input: New.
2008-01-24Define some global variablesdos-reis1-4/+10
2008-01-22commit forgotten commentsdos-reis1-0/+5
2008-01-19 * interp/construc.lisp (|loadLibNoUpdate|): Fix thinko in initialdos-reis1-1/+1
value for empty environments. * interp/database.boot (rebuildCDT): Likewise. * interp/i-map.boot (addDefMap): Likewise. (rewriteMap0): Likewise. (rewriteMap1): Likewise. (compileDeclaredMap): Likewise. (analyzeUndeclaredMap): Likewise. * interp/i-spec1.boot: Likewise. * interp/i-syscmd.boot (reportOperations): Likewise. * interp/i-toplev.boot (interpret): Likewise. * interp/lisplib.boot (loadLib): Likewise. (loadLibNoUpdate): Likewise. * interp/setvars.boot (resetWorkspaceVariables): Likewise. * interp/spad.lisp ($e): Move definition to sys-globals.boot. ($env): Likewise. * interp/sys-globals.boot ($e): Define here. ($env): Likewise. * algebra/any.spad.pamphlet (ObjectProperty): New. (Binding): Likewise. (Contour): Likewise. (Scope): Likewise. (Environment): Likewise. * algebra/exposed.lsp.pamphlet: Expose ObjectProperty, Binding, Contour, Scope, and Environment. * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include OBJPROP.o. (axiom_algebra_layer_1): Include BINDING.o (axiom_algebra_layer_2): Include CONTOUR.o (axiom_algebra_layer_3): Include SCOPE.o (axiom_algebra_layer_4): Include ENV.o * share/algebra: Update database.
2008-01-17 Fix SF/1849734dos-reis1-6/+6
* interp/i-spec1.boot (upand): Don't insist on having operands of type Boolean. (upor): Likewise. * algebra/mkrecord.spad.pamphlet (Pair): New domain constructor. * algebra/exposed.lsp.pamphlet: Expose Pair, PropositionalLogic, PropositionalFormula. * algebra/boolean.spad.pamphlet (PropositionalFormula): New domain constructor. * algebra/Makefile.pamphlet (axiom_algebra_layer_4): Include PAIR.o. (axiom_algebra_layer_19): Include PROPFRML.o * share/algebra: Update databases. * testsuite/interpreter/1849734.input: New.
2007-12-12 * compiler.boot (comp3): Use isQuasiquote.dos-reis1-16/+16
(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-1/+2
* 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-04 Support library function case.dos-reis1-2/+19
* i-spec1.boot (userDefinedCase): New. (upcase): Use it.
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-07remove more pamphletsdos-reis1-0/+1238