Age | Commit message (Collapse) | Author | Files | Lines |
|
* interp/spad-parser.boot: New parsing functions.
* interp/fnewmeta.lisp: Use them.
(PARSE-VarForm): Remove.
(PARSE-Scripts): Likewise.
(PARSE-ScriptItem): Likewise.
(PARSE-AnyId): Likewise.
* interp/parsing.lisp (PARSE-OperatorFunctionName): Remove.
(MATCH-ADVANCE-STRING): Likewise.
|
|
* interp/fnewmeta.lisp: Use it.
* interp/parsing.lisp: Likewise.
(MATCH-STRING): Remove.
|
|
Move remaining to parsing.lisp.
* interp/fnewmeta.lisp (PARSE-IntegerTok): Remove.
(PARSE-FloatTok): Likewise.
(PARSE-FormalParameter): Likewise.
(PARSE-FormalParameterTok): Likewise.
(PARSE-String): Likewise.
(PARSE-Name): Likewise.
|
|
* interp/parsing.lisp: Use them.
* interp/metalex.lisp: Likewise.
(GET-SPECIAL-TOKEN): Remove.
* interp/bootlex.lisp: Likewise. Remove old tokenizers,
|
|
Add more tokenizer functions.
* interp/fnewmeta.lisp: Use them.
* interp/parsing.lisp: Likewise.
* interp/bootlex.lisp: Likewise.
* interp/spad.lisp: Likewise.
(NEXT-BOOT-LINE): Remove.
* interp/metalex.lisp: Remove old lexing routines.
* interp/Makefile.in (lexing.$(FASLEXT)): Adjust dependency.
* boot/tokens.boot: newString is no longer builtin library function.
(shoeDictCons): Use makeString not newString.
* lisp/core.lisp.in (listToString): Fix typo.
|
|
* interp/bootlex.lisp: Use it.
* interp/fnewmeta.lisp: Likewise.
* interp/metalex.lisp: Likewise. Remove old token structure and
associated functions.
|
|
Add new grammar reduction abstract datatype facility.
* interp/fnewmeta.lisp: Use it.
* interp/parsing.lisp: Likewise.
* interp/bootlex.lisp (SPAD): Use popStack1.
* interp/spad-parser.boot (parseSpadFile): Likewise.
* interp/metalex.lisp: Remove REDUCTION and associated functions.
|
|
* interp/metalex.lisp: Include it. Use new stack datatype support.
* interp/parsing.lisp: Use new stack datatype support.
* interp/Makefile.in: Adjust.
|
|
only if not bootstrapping.
(isFunctor): Tidy.
* interp/g-util.boot (superType): Tidy.
* interp/database.boot (getDualSignature): Rename from
getDualSignatureFromDB. Adjust callers.
* interp/c-util.boot (isKnownCategory): Remove.
(diagnoseUnknownType): Use isCategoryForm.
* interp/bootlex.lisp (GET-INTEGER-IN-RADIX): Use SPAD_SYNTAX_ERROR.
* interp/metalex.lisp (GET-STRING-TOKEN): Likewise.
* interp/parsing.lisp (MUST): Likewise.
* algebra/boolean.spad.pamphlet (Refrence) [coerce]: Bypass
conversion to Identifier.
* algebra/domain.spad.pamphlet (ContructorKind): Tidy.
|
|
|
|
(append!): Likewise.
* boot/tokens.boot: Do not translate nconc.
|
|
|
|
PARSE-GlyphTok.
(PARSE-GlyphTok): Now accept string instead of symbol.
* interp/parsing.lisp (MATCH-ADVANCE-GLYPH): Remove as redundant.
|
|
* interp/parsing.lisp (TEST-LEXING): Remove.
(RTRACE): Likewise.
(RUNTRACE): Likewise.
(MATCH-ADVANCE-KEYWORD): New.
(MATCH-ADVANCE-GLYPH): Likewise.
(MATCH-ADVANCE-SPECIAL): Likewise.
(MATCH-SPECIAL): Likewise.
(MATCH-KEYWORD-NEXT): Likewise.
* interp/newaux.lisp: Make try and throw prefix operators.
* interp/metalex.lisp (KEYWORDS): Include finally, catch and throw.
* interp/fnewmeta.lisp (PARSE-Throw): New. Parse throw-expressions.
(PARSE-Catch): New. Parse catch-expressions.
(PARSE-Finally): New. Parse finally-expressions.
(PARSE-Try): New. Parse try-expressions.
* interp/compiler.boot (compThrow): New. Register to compile
throw-expressions.
(compTry): New. Register to compiler try-expressions.
(compCatch): New. Compile catch-handler expression.
* interp/g-opt.boot (optTry): New. Simplify simple expressions in
the try operand.
* interp/g-util.boot (expandThrow): New. Expand %throw forms.
(domainMatchCode): New.
(expandTry): New. Expand %try forms.
* doc/msgs/s2-us.msgs: Add new message with key S2GE0020.
* interp/g-error.boot (systemErrorHandler): Handle possible
uncaucght expression condition.
|
|
|
|
* interp/category.boot: Import "g-cndata"
* interp/c-util.boot: Import "g-opt".
* interp/Makefile.pamphlet: Adjust Make rules.
|
|
* interp/server.boot (parseAndInterpret): Don't set $BOOT.
* interp/setvars.boot (resetWorkspaceVariables): Likewise.
* interp/spad-parser.boot (parseSpadFile): Likewise.
* interp/postpar.boot: Disable Old Boot handling codes.
* interp/metalex.lisp (quote-if-string): Don't test for $BOOT.
* interp/parsing.lisp (IOStat): Likewise.
(IOClear): Likewise.
* interp/ht-util.boot (parseAndEval): Don't set $BOOT.
* interp/int-top.boot (ncTopLevel): Likewise.
* interp/fnewmeta.lisp: Remove Old Boot specific productions.
* interp/sys-macros.lisp (-REDUCE): Don't test for $BOOT.
(SPADDO): Likewise.
* interp/comp.lisp (COMP-TRAN-1): Likewise.
* interp/util.lisp (|string2SpadTree|): Likewise.
* interp/bootlex.lisp (READBOOT): Remove.
(READ-BOOT): Likewise.
(spad): Don't initialize $BOOT.
* interp/debug.lisp (/D-2): Likewise.
|
|
|
|
* Makefile.pamphlet (all-interpsys): Now depend on all-depsys.
src/interp/
2007-09-19 Gabriel Dos Reis <gdr@cs.tamu.edu>
* util.lisp.pamphlet ($directory-list): Move to sys-globals.boot.
($library-directory-list): Likewise.
* spad.lisp.pamphlet: Import "bootlex".
* preparse.lisp.pamphlet: Import "fnewmeta".
* postprop.lisp: Import "macros".
* postpar.boot.pamphlet: Import "postprop".
* nlib.lisp.pamphlet (rdefiostream): Define unconditionally.
(get-io-index-stream): Likewise.
(makedir): Likewise.
(get-directory-list): Don't use $current-diretory.
($filetype-table): Move to sys-constants.boot.
* patches.lisp.pamphlet ($current-directory): Remove.
(|cd|): Simplify implementation.
* newaux.lisp.pamphlet: Import "macros".
(|PARSE-NewKEY|): Define.
* metalex.lisp: Move various file, line, stack, character
utilities to here.
* macros.lisp.pamphlet (NREVERSE0): Move to sys-macros.lisp. Tidy.
* fnewmeta.lisp.pamphlet: Import "parsing".
* comp.lisp: Import "macros".
* def.lisp: Likewise.
(B-MDEF): Fix thinko.
* bootlex.lisp: Import "preparse", "def", and "nlib".
(BOOT-LINE-STACK): Move to metalex.lisp.
(NEXT-LINES-CLEAR): Likewise.
(NEXT-LINES-SHOW): Likewise.
(XCAPE): Likewise.
(KEYWORDS): Likewise.
* Makefile.pamphlet (${DEPSYS}): Now have all Lisp in compiled
form and load them.
* bookvol5.pamphlet ($current-directory): Remove.
|
|
export declarations. Import "boot-pkg".
* sys-macros.lisp (EQUABLE): Remove definition.
* sys-constants.boot ($true): Define as twice quoted T.
* hash.lisp.pamphlet: Push into package BOOT, VMLISP.
* ggreater.lisp: Likewise.
* nlib.lisp.pamphlet: Likewise.
* obey.lisp: Likewise.
* construc.lisp.pamphlet: Remove reference to VMLISP package.
* daase.lisp.pamphlet: Likewise.
* debug.lisp.pamphlet: Likewise.
* util.lisp.pamphlet: Likewise.
* cformat.boot: Remove hack for GCL limitation.
* scan.boot: Likewise.
* incl.boot: Likewise.
* parsing.lisp: Likewise.
* bootlex.lisp: Remove reference to VMLISP package.
* union.lisp: Likewise.
* boot-pkg.lisp: Remove hack for GCL limitation. Don't import
"vmlisp" anymore.
* bookvol5.pamphlet (vmlisp::$current-directory): Remove.
* patches.lisp.pamphlet: Likewise.
* astr.boot: Import "vmlisp" instead of "boot-pkg".
* Makefile.pamphlet (boot-pkg.$(FASLEXT)): Don't depend on
vmlisp.$(FASLEXT).
(vmlisp.$(FASLEXT)): Depend on boot=pkg.$(FASLEXT).
|
|
(${DEPSYS}): Likewise for def.lisp, bootlex.lisp, postprop.lisp,
metalex.lisp. Use |compileLispFile| instead of COMPILE-FILE.
* Makefile.in: Regenerate.
* union.lisp: New.
* union.lisp.pamphlet: Move content to union.lisp. Remove.
* obey.lisp: New.
* obey.lisp.pamphlet: Move content to obey.lisp. Remove.
* nspadaux.lisp: New.
* nspadaux.lisp.pamphlet: Move content to nspadaux.lisp. Remove.
* fname.lisp: New.
* fname.lisp.pamphlet: Move content to fname.lisp. Remove.
* def.lisp: New.
* def.lisp.pamphlet: Move content to def.lisp. Remove.
* comp.lisp: New.
* comp.lisp.pamphlet: Move content to comp.lisp. Remove.
* bootlex.lisp: New.
* bootlex.lisp.pamphlet: Move content to bootlex.lisp. Remove.
* postprop.lisp: New.
* postprop.lisp.pamphlet: Move content to postprop.lisp. Remove.
* metalex.lisp: New.
* metalex.lisp.pamphlet: Move content to metalex.lisp. Remove.
* parsing.lisp: New.
* parsing.lisp.pamphlet: Move content to parsing.lisp. Remove.
|