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.
|
|
* interp/i-analy.boot (bottomUp): Change MAP to %Map.
(isEltable): Likewise.
* interp/i-coerce.boot (retract): Likewise.
* interp/i-eval.boot (getArgValue): Likewise.
* interp/i-funsel.boot (selectLocalMms): Likewise.
* interp/i-intern.boot (getValueFromEnvironment): Likewise.
* interp/i-map.boot (mkAuxiliaryName): Likewise.
(augmentMap): Likewise.
(displayMap): Likewise.
(putBodyInEnd): Likewise.
(expandRecursiveBody): Likewise.
* interp/i-output.boot (outputTran): Likewise.
* interp/i-spec1.boot (declare): Likewise.
* interp/i-syscmd.boot (displayMacro): Likewise.
* interp/i-toplev.boot (interpret2): Likewise.
* interp/patches.lisp (MAP): Remove.
* interp/trace.boot (isUncompiledMap): Likewise.
|
|
* interp/i-analy.boot: Likewise.
* interp/i-coerfn.boot: Likewise.
* interp/i-funsel.boot: Likewise.
* interp/i-intern.boot: Likewise.
* interp/i-resolv.boot: Likewise.
* interp/i-spec1.boot: Likewise.
* interp/mark.boot: Likewise.
* interp/nrungo.boot: Likewise.
* interp/postpar.boot: Likewise.
* interp/wi1.boot: Likewise.
|
|
context.
|
|
(getValueNormalForm): New.
* interp/i-code.boot (intCodeGenCOERCE): Use it.
* interp/i-coerce.boot (coerceIntByMap): Likewise.
* interp/i-eval.boot (getArgValue): Likewise.
(getArgValue2): Likewise.
* interp/i-funsel.boot (selectMms): Likewise.
* interp/i-map.boot (rewriteMap): Likewise.
* interp/i-spec2.boot (IFcodeTran): Likewise.
(evalLET): Likewise.
(upreturn): Likewise.
* interp/g-cndata.boot (isConstructorName): New.
* testsuite/interpreter/eval-dep-type.input: New.
|
|
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.
|
|
|
|
|
|
functions `parameters' and `body'.
* algebra/domain.spad.pamphlet: Rename from algebra/domain.spad.
(Category): New category.
* algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include
CATEGORY.o.
(DOMAIN.NRLIB/code.$(FASLEXT)): Remove rule.
* interp/trace.boot (transTraceItem): Use $LangSupportTypes.
* interp/sys-constants.boot ($None): New.
($Type): Likewise.
($LangSupportTypes): Likewise.
* interp/parse.boot (parseHas): Use $LangSupportTypes.
(parseHasRhs): Likewise.
* interp/i-spec2.boot (upLETtype): Use conceptualType.
(uptypeOf): Likewise.
(upwhere): Likewise.
(typeOfType): Remove.
* interp/i-spec1.boot (isDomainValuedVariable): Variables with
type Category and Type are domain valued too.
* interp/i-output.boot (output): Special case only Mode and Type.
* interp/i-funsel.boot (selectMms): Don't ignore modemaps with
category parameters.
* interp/i-coerce.boot (canCoerce1): Test for Category instead of
SubDomain Domain.
(canCoerceFrom0): Use $None and $Any.
(absolutelyCannotCoerce): Use $None.
(coerceInteractive): Use $LangSupportTypes.
(coerceInt1): Use $Any.
* interp/i-analy.boot (conceptualType): New.
(bottomUpType): Use it.
* interp/clammed.boot (isValidType): Use $LangSupportTypes.
* interp/g-cndata.boot (isNameOfType): Likewise.
* interp/category.boot (Category): Remove hacky definition.
* interp/buildom.boot ($noCategoryDomains): Domain now has a
Lisplib.
|
|
($createLocalLibDb): Likewise.
* clam.boot ($hashNode): Likewise.
* comp.lisp (|$compileDontDefineFunctions|): Likewise.
* compiler.boot ($compileOnlyCertainItems): Likewise.
* database.boot ($globalExposureGroupAlist): Likewise.
* define.boot ($newCompCompare): Likewise.
* format.boot ($permitWhere): Likewise.
* g-boot.boot ($inDefLET): Likewise.
($inDefIS): Likewise.
($letGenVarCounter): Likewise.
($isGenVarCounter): Likewise.
* g-error.boot ($ReadingFile): Likewise.
(handleLispBreakLoop): Remove special case on $cclSystem.
* g-timer.boot (computeElapsedTime): Likewise.
* g-util.boot ($interpOnly): Move from setq.lisp to here.
* i-funsel.boot ($domPvar): Likewise.
* i-object.boot ($immediateDataSymbol): Likewise.
* i-output.boot ($algebraOutputStream): Likewise.
(ERROROUTSTREAM): Likewise.
(ERRORINSTREAM): Likewise.
* i-spec2.boot ($InterpreterMacroAlist): Likewise.
* i-syscmd.boot ($NonNullStream): Likewise.
($NullStream): Likewise.
($localExposureDataDefault): Likewise.
($localExposureData): Likewise.
* lisplib.boot ($functionLocations): Likewise.
* msgdb.boot ($testingSystem): Likewise.
* nlib.lisp (get-directory-list): Tidy.
* nruncomp.boot ($devaluateList): Move from setq.lisp to here.
($functorLocalParameters): Likewise.
($insideCategoryPackageIfTrue): Likewise.
($profileCompiler): Likewise.
* nrunfast.boot ($doNotCompressHashTableIfTrue): Likewise.
* nrungo.boot ($insideCompileBodyIfTrue): Likewise.
* setvars.boot ($InitialCommandSynonymAlist): Likewise.
($CommandSynonymAlist): Likewise.
(setOutputLibrary): Simplify.
* spad.lisp (|$newCompCompare|): Don't set here.
(|$compileOnlyCertainItems|): Likewise.
* sys-constants.boot ($BasicPredicates): Include SYMBOLP.
($TriangleVariableList): Move from setq.lisp to here.
($Any): Likewise.
($Boolean): Likewise.
($SingleInteger): Likewise.
($QuotientField): Likewise.
($ComplexInteger): Likewise.
($OutputForm): Likewise.
($FunctionalExpression): Likewise.
($Expression): Likewise.
($AnonymousFunction): Likewise.
* sys-globals.boot (INPUT_-LIBRARIES): Likewise.
(OUTPUT_-LIBRARY): Likewise.
($newConlist): Likewise.
($compilingInputFile): Likewise.
($minivectorNames): Likewise.
|
|
2007-11-13 Gabriel Dos Reis <gdr@cs.tamu.edu>
* Makefile.pamphlet (SYNTAX.NRLIB/code.$(FASLEXT)): New rule.
(axiom_algebra_layer_14): Include SYNTAX.o.
* syntax.spad: New algebra file.
* domain.spad (Domain$reify): New.
src/share/
2007-11-13 Gabriel Dos Reis <gdr@cs.tamu.edu>
* algebra/browse.daase: Update.
* algebra/category.daase: Likewise.
* algebra/compress.daase: Likewise.
* algebra/interp.daase: Likewise.
|
|
|