Age | Commit message (Collapse) | Author | Files | Lines |
|
parameter. Adjust callers.
|
|
* interp/spad-parser.boot: Add a reader parameter to all parsing
functions. Adjust callers.
* interp/newaux.lisp: Adjust form of specialized parsers.
* interp/lexing.boot: Add a reader parameter to all lexing
functions. Adjust Callers.
* interp/io.boot (%Reader): Add source line field.
* interp/debug.lisp: Adjust IO and lexer calls.
* interp/util.lisp (string2SpadTree): Remove as unused.
|
|
(INITIALIZE-PREPARSE): Do not set it.
(preparse1): Do not reference it. Do not test for ioTerminal? and
the input is always a disk file.
* interp/spad-parser.boot (findCommentBlock): Do not reference
$EchoLineStack.
(preparseReadLine1): Do not reference $LineList.
|
|
* interp/preparse.lisp (INITIALIZE-PREPARSE): Parameter is now a
reader.
(preparse1): Likewise. Tidy.
* interp/spad-parser.boot (preparseReadLine): Likewise.
(preparseReadLine1): Likewise.
(preparse): Likewise.
(parseSpadFile): Likewise.
* interp/spad.lisp (SPAD): Make it a unary function. Simplify.
(INITIALIZE): Remove.
|
|
(makeParserState): Likewise.
(%Translator): Likewise.
(makeTranslator): Likewise.
Make all parsing functions take a parser state argument.
* boot/translator.boot (shoeOutParse): Adjust.
* interp/spad-parser.boot (stringPrefix?): Remove redudant definition.
|
|
* interp/spad-parser.boot (floatExponent): New.
(parseFloatExponent): Use it instead of FLOATEXPID.
* interp/lexing.boot (nextLinesClear!): New.
(ioClear!): Likewise.
(OUT-STREAM): Define here.
* interp/debug.lisp: Import lexing instead of parsing. Tidy.
* interp/preparse.lisp: Likewise.
* interp/spad.lisp: Likewise.
* interp/util.lisp: Likewise.
* interp/Makefile.in (OBJS): Do not include parsing.$(FASLEXT).
(parsing.$(FASLEXT)): Remove. Adjust dependents.
|
|
avoiding awakening GCL bug and quadratic traversal of lines.
(parsePiles): Simplify.
|
|
to spad-parser.boot.
* interp/parsing.lisp (MATCH-ADVANCE-SPECIAL): Remove.
(MATCH-SPECIAL): Likewise.
(MATCH-KEYWORD-NEXT): Likewise.
(INITIAL-SUBSTRING-P): Likewise.
(TERMCHR): Likewise.
(dollarTran): Simplify and move to spad-parser.boot.
|
|
(parseDara): Likewise. Do not set LABLASOC.
* interp/bootlex.lisp (PRINT-DEFUN): Remove.
(TRANSLABEL): Likewise.
(TRANSLABEL1): Likewise.
* interp/preparse.lisp (LABLASOC): Likewise.
|
|
(CONVERSATION1): Likewise.
(MAKE-PARSE-FUNCTION): Likewise.
(MAKE-PARSE-FUNCTION1): Likewise.
(MAKE-PARSE-FUNC-FLATTEN): Likewise.
(MAKE-PARSE-FUNC-FLATTEN-1): Likewise.
(TRANSPGVAR): Likewise.
(GETRULEFUNLISTS): Likewise.
(REDUCTION-PRINT): Likewise.
(TRACEMETA): Likewise.
(TRMETA): Likewise.
(TRMETA1): Likewise.
(/MDEF): Likewise.
* interp/macros.lisp (EXPAND-TABS): Likewise.
* interp/spad.lisp (READ-SPAD): Likewise.
(READ-INPUT): Likewise.
(READ-SPAD0): Likewise.
(READ-SPAD1): Likewise.
(READ-SPAD-1): Likewise.
(New,ENTRY,1): Likewise.
(New,ENTRY,2): Likewise.
* interp/bootlex.lisp (SPAD_SYNTAX_ERROR): Move to debug.lisp.
(SPAD_LONG_ERROR): Likewise.
(SPAD_SHORT_ERROR): Likewise.
(SPAD_ERROR_LOC): Likewise.
* interp/c-util.boot (COMP370): Move to lisp-backend.boot.
(compQuietly): Move to slam.boot.
|
|
Rename as parsePrint.
|
|
spad-parser.boot Rename as addParensAndSemisToLine.
(PARSEPILES): Move spad-parser.boot. Rename as parsePiles.
|
|
|
|
Rename as preparse.
|
|
Rename to findCommentBlock.
|
|
Rename to preparseEcho.
* lisp/core.lisp.in (formatToStream): New.
|
|
(SPAD): Tidy.
* interp/spad-parser.boot (parseSpadFile): Do not test for *EOF*
or FILE-CLOSED.
* interp/preparse.lisp (INITIALIZED-PREPARSE): Use readLine.
(preparseReadLine1): Likewise.
* interp/parsing.lisp (FILE-CLOSED): Remove.
(GET-A-LINE): Likewise.
(CURRENT-FRAGMENT): Likewise.
(INPUT-CLEAR): Likewise.
(READ-A-LINE): Likewise.
(IOSTREAMS-CLEAR): Don't set FILE-CLOSED.
(IOCLEAR): Don't call INPUT-CLEAR.
|
|
Renamed skipIfBlock.
(SKIP-IF-BLOCK): Move to spad-parser.boot. Renamed skipToEndif.
(PREPARSEREADLINE): Move to spad-parser.boot. Renamed
preparseReadLine.
|
|
* interp/preparse.lisp (INITIAL-SUBSTRING): Remove.
* interp/g-util.boot (stringPrefix?): Remove.
* interp/compiler.boot (compTypeOf): Remove.
(comp3): Don't call it.
|
|
|
|
Renamed addClose.
(ESCAPED): Move to spad-parser.boot. Renamed escaped?.
(INFIXTOK): Move spad-parser.boot. Renamed infixToken?.
|
|
* interp/spad-parser.boot (parseCategory): Accept exported properties.
(parseFormula): New.
|
|
BOOT-LINE-STACK. Use try/finally to ensure streams are closed.
* interp/spad.lisp (New,ENTRY,2): Use parseNewExpr.
* interp/util.lisp (string2SpadTree): Likewise.
|
|
for interactive mode.
(postBigFloat): Likewise.
(postDef): Likewise.
(postMDef): Likewise.
(tuple2List): Likewise.
(postReduce): Likewise.
(postQUOTE): Remove.
(postQuot): Likewise.
(postOp): Likewise.
(postTran): Adjust.
* interp/newaux.lisp: Replace %LET with ':='.
* interp/property.lisp: Likewise.
* interp/g-util.boot (getTypeOfSyntax): Likewise.
* interp/define.boot (checkRepresentation): Likewise.
(doIt): Likewise.
* interp/compiler.boot (compSetq): Likewise.
(compRecoverGuard): Likewise.
(compReduce1): Likewise.
* interp/c-util.boot (lhsOfAssignment): Likewise.
(isAlmostSimple): Likewise.
* interp/c-doc.boot (recordAttributeDocumentation): Likewise.
* interp/parse.boot (parseLeftArrow): Remove.
(parseLETD): Likewise.
(parseAssign): Rename from parseLET.
* algebra/syntax.spad.pamphlet (SpadAst): Handle both cases.
|
|
* interp/postpar.boot (postSEGMENT): Remove.
(postTupleCollect): Likewise.
(postBootNotEqual): Likewise.
* interp/parsing.lisp (CHAR-EQ): Remove.
(CHAR-NE): Likewise.
(getToken): Likewise.
* interp/newaux.lisp: Remove "^=" as legitimate operator.
* interp/lexing.boot (geToken): Rename from getSpadToken.
* interp/i-intern.boot (mkAtree3): Check for new form of universal
segment.
* interp/parse.boot (parseSegment): Likewise.
* algebra/seg.spad.pamphlet (Segment): Use .. instead of SEGMENT.
(SegmentFunctions2): Likewise.
(UniversalSegment): Likewise.
|
|
* interp/sys-constants.boot ($OperatorFunctionNames): Add "by" and
"..".
* interp/spad.lisp: Tidy.
* interp/spad-parser.boot: New parsers.
* interp/preparse.lisp: Remove dead codes.
* interp/parsing.lisp (MATCH-ADVANCE-KEYWORD): Remove.
* interp/parse.boot (doParseCategory): Rename from parseCategory.
* interp/newaux.lisp: Tidy.
* interp/lexing.boot (getSpadToken): New.
(Keywords): Remove 'when'.
(matchKeywordNext): New.
(matchSpecial): Likewise.
(matchAdvanceSpecial): Likewise.
(matchAdvanceGlyph): Likewise.
* interp/fnewmeta.lisp: Move variable definitions to preparse.lisp.
Remove Lisp based parsers.
Remove file.
* interp/c-doc.boot (recordAttributeDocumentation): Fix thinko.
* interp/bootlex.lisp (GET-BOOT-TOKEN): Remove.
* interp/Makefile.in: Adjust dependencies.
* boot/parser.boot (bpChar): New.
(bpPattern): Allow character constants.
|
|
* interp/fnewmeta.lisp: Use them,
(PARSE-Return): Remove.
(PARSE-Throw): Likewise.
(PARSE-Jump): Likewise.
(PARSE-Exit): Likewise.
(PARSE-Leave): Likewise.
(PARSE-ElseClause): Likewise.
(PARSE-Label): Likewise.
|
|
* interp/spad-parser.boot: New parsing functions.
* interp/fnewmeta.lisp: Use them.
(PARSE-NewExpr): Remove.
(PARSE-Command): Likewise.
(PARSE-SpecialKeyWord): Likewise.
(PARSE-TokenOption): Likewise.
(PARSE-PrimaryOrQM): Likewise.
(PARSE-InfixWith): Likewise.
(PARSE-With): Likewise.
(PARSE-Inline): Likewise.
(PARSE-Quanifier): Likewise.
(PARSE-QuantifiedVariable): Likewise.
(PARSE-Infix): Likewise.
(PARSE-Prefix): Likewise.
(PARSE-Suffix): Likewise.
(PARSE-TokTail): Likewise.
(PARSE-Qualification): Likewise.
(PARSE-Primary): Likewise.
(PARSE-PrimaryNoFloat): Likewise.
(PARSE-Quad): Likewise.
|
|
* 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.
|
|
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.
|
|
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.
|
|
(initializeGlobalState): Use it.
* interp/spad-parser.boot (parseSpadFile): Tidy.
* interp/g-cndata.boot (installConstructor): Exit early it global
table not initialized.
* interp/database.boot (makeInitialDB): New.
(populateDBFromFile): Likewise.
* interp/daase.lisp: Introduce more DB accessors.
* interp/br-util.boot (dbSourceFile): Remove.
* interp/br-con.boot (kdPageInfo): Use
getConstructorSourceFileFromDB instead of dbSourceFile.
(kPage): Likewise.
* algebra/Makefile.in (SPADFILES): Include domain.spad
|
|
* boot/utility.boot (reverse!): Define.
* boot/parser.boot: Use reverse! instead of NREVERSE.
* boot/ast.boot: Generate reverse! forms instead of NREVERSE.
|
|
* interp/br-search.boot: Use "not" instead of "^".
* interp/br-util.boot: Likewise.
* interp/database.boot: Likewise.
* interp/define.boot: Likewise.
* interp/format.boot: Likewise.
* interp/g-error.boot: Likewise.
* interp/i-analy.boot: Likewise.
* interp/i-coerce.boot: Likewise.
* interp/i-coerfn.boot: Likewise.
* interp/i-funsel.boot: Likewise.
* interp/i-map.boot: Likewise.
* interp/i-output.boot: Likewise.
* interp/i-resolv.boot: Likewise.
* interp/i-spec1.boot: Likewise.
* interp/i-spec2.boot: Likewise.
* interp/i-syscmd.boot: Likewise.
* interp/mark.boot: Likewise.
* interp/modemap.boot: Likewise.
* interp/pspad1.boot: Likewise.
* interp/pspad2.boot: Likewise.
* interp/spad-parser.boot: Likewise.
* interp/trace.boot: Likewise.
* interp/wi1.boot: Likewise.
* interp/wi2.boot: Likewise.
|
|
* 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.
|
|
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.
|
|
|
|
Consistently use $InputStream and $OutputStream for I/O.
* interp/c-util.boot: Likewise.
* interp/comp.lisp: Likewise.
* interp/compat.boot: Likewise.
* interp/debug.lisp: Likewise.
* interp/def.lisp: Likewise.
* interp/g-error.boot: Likewise.
* interp/i-toplev.boot: Likewise.
* interp/int-top.boot: Likewise.
* interp/intfile.boot: Likewise.
* interp/lisplib.boot: Likewise.
* interp/macros.lisp: Likewise.
* interp/metalex.lisp: Likewise.
* interp/msgdb.boot: Likewise.
* interp/patches.lisp: Likewise.
* interp/preparse.lisp: Likewise.
* interp/server.boot: Likewise.
* interp/spad-parser.boot: Likewise.
* interp/spad.lisp: Likewise.
* interp/sys-globals.boot: Likewise.
* interp/sys-macros.lisp: Likewise.
* interp/sys-os.boot: Likewise.
* interp/unlisp.lisp: Likewise.
* interp/vmlisp.lisp: Likewise.
* interp/Makefile.pamphlet (bootlex.$(FASLEXT)): Require
sys-globals.$(FASLEXT) too.
(vmlisp.$(FASLEXT)): Likewise.
|
|
|