aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2012-06-04 * interp/spad.lisp (SPAD): Adjust.dos-reis8-553/+552
* 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.
2012-06-03 * interp/preparse.lisp ($LineList): Remove.dos-reis5-28/+23
(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.
2012-06-03 * interp/io.boot (%Reader): New data structure.dos-reis5-72/+82
* 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.
2012-06-03 * interp/lexing.boot (%Line): Now a record structure.dos-reis10-46/+59
* boot/parser.boot (bpTypeName): Split out of bpTypeAliasDefinition. (bpStruct): Use it. Support parameterized structures. * boot/ast.boot (ctorName): New. (bfEnum): Use it for parameterized enums. (bfRecord): Use it for parameterized records.
2012-06-03 * boot/parser.boot (bpSignatureTail): Split out of bpSignature.dos-reis8-149/+182
(bpTyped): Use it. (bpThrow): Lilkewise. (bpRegularBVItemTail): Likewise. (bpAssignLHS): Likewise. (bpStoreName): Do not reference $typings. * boot/ast.boot (%Ast): Remove %Pretend variant. (bfSignature): Rename from bfLocal. Build %Signature variant. (bfLET1): Handle assignment to typed variable. (shoeCompTran): Do not reference $typings. (shoeCompTran1): Do not translate assignment to typed variables. (bindFluidVars): Handle them here. (bfTagged): Remove. (bfTry): Tidy. * boot/translator.boot (shoeOutParse): Do not reference $typings and $returns. * interp/c-util.boot (isAlmostSimple): Initialize $assignmentList.
2012-06-01 * boot/translator.boot: Remove DEFUSE, $booDefined,dos-reis3-501/+8
$bootDefinedTwice, $bootUsed, $lispWordTable, shoeDfu, shoeReport, shoeDefUse, defuse, defuse1, defSeparate, unfluidlist, defusebuiltin, bootOut, CLESSP, SSORT, bootOutLines, XREF, shoeXref, shoeXreport.
2012-06-01 * boot/ast.boot (%LoadUnit): Add field for enclosing function.dos-reis7-68/+81
Remove references to $op.
2012-06-01 * boot/ast.boot (%LoadUnit): Add fields for side conditions.dos-reis7-28/+40
* boot/parser.boot: Adjust.
2012-06-01 * boot/ast.boot (%LoadUnit): Add fields for let var and is vardos-reis3-44/+72
sequence numbers. Eliminate $letGenVarCounter and $isGenVarCounter.
2012-05-31 * boot/ast.boot: Add a %LoadUnit parameter to most functions.dos-reis7-423/+496
Adjust callers. * boot/translator.boot: Tidy.
2012-05-30misc cleanupdos-reis3-10/+10
2012-05-30 * boot/parser.boot: Replace references to $ttok.dos-reis5-70/+67
2012-05-30 * boot/parser.boot (%ParserState): Add field for current token.dos-reis7-198/+220
Replace references to $stok.
2012-05-30 * boot/ast.boot (bfSpecificErrorHere): New.dos-reis7-127/+160
(bfISReverse) Use it. Don't use bpTrap. (bfIS1): Likewise. (bfParameterList): Likewise. (bfHandlers): Likewise. * boot/parser.boot (bpTrap): Take a parser state argument. Adjust callers.
2012-05-30 * boot/parser.boot: Remove references to $bpCount.dos-reis5-70/+77
* boot/translator.boot (shoeOutParse): Likewise.
2012-05-30 * boot/parser.boot: Remove references to $bpParentCount.dos-reis5-27/+37
* boot/translator.boot (shoeOutParse): Likewise.
2012-05-30 * boot/parser.boot: Remove references to $stack.dos-reis5-100/+110
* boot/translator.boot: Likewise.
2012-05-30 * boot/parser.boot: Add parser state argument to more functions.dos-reis5-645/+699
Remove references to $inputStream. * boot/translator.boot (shoeOutParse): Remove $inputStream.
2012-05-29 * boot/parser.boot (%ParserState): New.dos-reis10-1099/+1277
(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.
2012-05-28 * interp/lexing.boot: Use makeToken directly.dos-reis6-48/+72
(tokenInstall): Remove. (getSpadIntegerToken): Lose parameter. Adjust callers. (getNumberToken): Likewise. (getArgumentDesignator): Likewise. (getToken): Likewise. (getSpadString): Likewise. (getSpecial): Likewise. (getGliph): Likewise. (getIdentifier): Likewise. * lisp/core.lisp.in ($stdio): New. * boot/includer.boot: Use it. * boot/translator.boot: Likewise. * boot/utility.boot (stringPrefix?): New.
2012-05-28 * interp/io.boot (findChar): Do not define here.dos-reis10-38/+341
* interp/match.boot (charPosition): Likewise. * boot/utility.boot (charPosition): Now return argument string length if no match. (findChar): New. * boot/scanner.boot (lexerCharPosition): Adjust. (shoeAccumulateLines): Use findChar.
2012-05-26 * boot/ast.boot (bfMDef): Simplify.dos-reis5-94/+34
(backquote): Do not quote integer and string literals.
2012-05-26Update datedos-reis6-21/+984
2012-05-26 * boot/tokens.boot: freshLine, functionSymbol?, and symbolGlobal?dos-reis14-18/+38
are now builin. * boot/ast.boot: Tidy. * interp/c-util.boot: Likewise. * interp/br-saturn.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/i-output.boot: Likewise. * interp/clam.boot: Likewise. * interp/trace.boot: Likewise. * interp/sys-utility.boot: Likewise. * interp/sys-driver.boot: Likewise. * interp/lisplib.boot: Likewise. * interp/lisp-backend.boot: Likewise.
2012-05-25/EDITFILE cleanupdos-reis11-28/+30
2012-05-25 * interp/sys-globals.boot ($compCount): Remove.dos-reis6-189/+18
* interp/spad.lisp (knownEqualPred): Move to buildom.boot (hashable): Likewise. Remove junk. * interp/debug.lisp: Remove junk. * interp/vmlisp.lisp: Likewise.
2012-05-24 * algebra/Makefile.in (initdb.$(FASLEXT)): Add --syslib to fix thinko.dos-reis2-1/+5
2012-05-24 * boot/scanner.boot: Eliminate fluid variable $n.dos-reis3-262/+379
(lexerRefresh?): New. (lexerSetLine!): Likewise. (lexerSkipBlank!): Likewise. (lexerSkipToEnd!): Likewise. (lexerAdvancePosition!): Likewise. (lexerCharCountToCompleteTab): Likewise. (lexerCurrentChar): Likewise. (lexerCharPosition): Likewise. (lexerCharacterAt): Likewise. (lexerEol?): Likewise.
2012-05-24 * boot/scanner.boot (lexerLineLength): New.dos-reis4-94/+118
(shoeNextLine): Use it in replacement of $sz. (shoeLineToks): Likewise. (shoeLispEscape): Likewise. (shoeEsc): Likewise. (shoeStartsComment): Likewise. (shoeStartsNegComment): Likewise. (shoeNegComment): Likewise. (shoeComment): Likewise. (shoePossFloat): Likewise. (shoeSpace): Likewise. (shoeS): Likewise. (shoeW): Likewise. (shoeInteger1): Likewise. (shoeNumber): Likewise. (shoeExponent): Likewise.
2012-05-24change lexer line accessor namedos-reis2-105/+107
2012-05-24 * boot/scanner.boot (%Lexer): New record structure.dos-reis3-278/+343
Add a lexer parameter to all lexing functions that need one. Adjust their callers.
2012-05-24 * boot/tokens.boot: "@" is now a new keyword.dos-reis9-68/+97
* boot/ast.boot (bfRestrict): New. (bpTyped): Rename from bpTagged. Accept type restriction. * boot/utility.boot (drop): Restrict the result to a %List.
2012-05-23 * interp/database.boot (%Constructor): New.dos-reis5-31/+50
(makeConstructor): Likewise. (makeInitialDB): Tidy. * interp/daase.lisp (makeDB): Take two more parameters. Build a %Constructor structure object too.
2012-05-23 * interp/sys-driver.boot (initializeDatabases): Load initidb ifdos-reis4-20/+32
specified. * interp/database.boot (populateDFFromFile): Remove. (printAllInitdbInfo): Write as as Lisp file. * algebra/Makefile.in (COMPILE_SPAD): initdb is now a FASL. (BOOTSTRAP): Likewise. (strap-2/%.$(FASLEXT)): Likewise. (initdb.$(FASLEXT)): New.
2012-05-23 * interp/vmlisp.lisp (MAKE-CVEC): Remove.dos-reis28-590/+524
(GETSTR): Likewise. * interp/sys-macros.lisp (INTERNL): Likewise. * interp/macros.lisp: Move content to vmlisp.lisp. Remove. * interp/Makefile.in: Adjust. * interp/debug.lisp: Now import sys-macros * interp/fname.lisp: Likewise. * interp/format.boot: Likewise. * interp/g-timer.boot: Likewise. * interp/g-util.boot: Likewise. * interp/ht-util.boot: Likewise. * interp/htcheck.boot: Likewise. * interp/htsetvar.boot: Likewise. * interp/monitor.lisp: Likewise. * interp/newaux.lisp: Likewise. * interp/newfort.boot: Likewise. * interp/nlib.lisp: Likewise. * interp/postpar.boot: Likewise. * interp/profile.boot: Likewise. * interp/server.boot: Likewise. * interp/setvars.boot: Likewise. * interp/setvart.boot: Likewise. * interp/sfsfun.boot: Likewise. * interp/simpbool.boot: Likewise. * interp/spad.lisp: Likewise. * interp/termrw.boot: Likewise. * interp/topics.boot: Likewise.
2012-05-23 * boot/includer.boot (%SourceLine): New datatype.dos-reis7-35/+68
(makeSourceLine): New. Use source line macro accessors. * boot/pile.boot: Likewise. * boot/scanner.boot: Likewise.
2012-05-23 * interp/br-search.boot: Use findChar and findString in lieu of STRPOS.dos-reis11-21/+34
* interp/database.boot: Likewise. * interp/format.boot: Likewise. * interp/i-funsel.boot: Likewise. * interp/i-map.boot: Likewise. * interp/match.boot: Likewise. * interp/scan.boot: Likewise. * interp/trace.boot: Likewise.
2012-05-23 * boot/tokens.boot (%Token): New datatype.dos-reis13-142/+135
(makeToken): New. * boot/includer.boot: Use %token accessors. * boot/parser.boot: Likewise. * boot/pile.boot: Likewise. * boot/scanner.boot: Likewise. * boot/utility.boot: Export subString.
2012-05-22 * interp/lexing.boot (%Token): Now an actual type defined as ados-reis4-46/+53
record structure. (copyToken): Adjust. (tokenSymbol): Remove as now automatically generated. (tokenType): Likewise. (tokenNonblank?): Likewise. * boot/ast.boot (bfRecordDef): Specify a name for a copier function.
2012-05-22 * boot/translator.boot (translateToplevel): Handle record structures.dos-reis9-60/+339
* boot/tokens.boot: "with" is now a keyword in Boot. * boot/parser.boot (bpSignature): The typing is required afte the colong. (bpFieldList): New. (bpGlobalAccessors): Likewise. (bpAccessorDefinitionList): Likewise. (bpAccessorDefinition): Likewise. (bpFieldSection): Likewise. (bpSelectField): Likewise. (bpRecord): Likewise. (bpStruct): Use it to implement record structures. * boot/ast.boot (%Ast): Add %Record and %AccessorDef. (bfRecordDef): New.
2012-05-22 * boot/ast.boot (needsPROG): Remove.dos-reis10-4830/+4722
(shoePROG): Likewise. (declareLocalVars): New. (maybeAddBlock): Likewise. (hasReturn?): Likewise. (shoeCompTran): Tidy.
2012-05-21 * interp/parsing.lisp: Remove.dos-reis10-302/+64
* 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.
2012-05-21 * interp/spad-parser.boot (addParensAndSemisToLine): Drop 'drop',dos-reis2-15/+19
avoiding awakening GCL bug and quadratic traversal of lines. (parsePiles): Simplify.
2012-05-21 * interp/spad.lisp (S-PROCESS): Rename to translateSpad and movedos-reis4-56/+43
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.
2012-05-21 * interp/lexing.boot (getDecimalNumberToken): New.dos-reis5-108/+54
(getIntegerInRadix): Likewise. (getSpadIntegerToken): Likewise. (getToken): Use it. * interp/Makefile.in (bootlex.$(FASLEXT)): Remove rule. (OBJS): Do not include it. * interp/bootlex.lisp: Remove.
2012-05-21 * interp/spad-parser.boot (parseSexpr1): Simplify.dos-reis4-42/+11
(parseDara): Likewise. Do not set LABLASOC. * interp/bootlex.lisp (PRINT-DEFUN): Remove. (TRANSLABEL): Likewise. (TRANSLABEL1): Likewise. * interp/preparse.lisp (LABLASOC): Likewise.
2012-05-21 * interp/vmlisp.lisp (SETANDFILE): Remove.dos-reis11-49/+36
(LAM,EVALANDFILEACTQ): Likewise. * interp/sys-utility.boot (PRINT-AND-EVAL-DEFUN): Likewise. * interp/slam.boot (reportFunctionCompilation): Tidy. * interp/lisp-backend.boot (evalAndPrintBackendDecl): New. * interp/c-util.boot (backendCompileSPADSLAM): Use it in lieu of SETANDFILE. (compAndDefine): Use evalAndPrintBackendDecl in lieu of PRINT-AND-EVAL-DEFUN. * interp/hypertex.boot: Clean up. * interp/nhyper.boot: Likewise. * interp/word.boot: Likewise.
2012-05-21 * interp/vmlisp.lisp (EVALANDFILEACTQ): Second argument is nodos-reis9-14/+57
longer optional. Adjust callers. (LAM\,EVALANDFILEACTQ): Likewise. * interp/slam.boot (compQuietly): Use printBackendDecl. * interp/spad.lisp (SPAD): Likewise. * interp/sys-utility.boot (PRINT-AND-EVAL-DEFUN): Likewise. * interp/macros.lisp (SETANDFILE): Move to vmlisp.lisp. * interp/lisp-backend.boot (printBackendStmt): New. (evalAndPrintBackendStmt): Likewise. (printBackendDecl): Likewise. * interp/c-util.boot (registerFunctionReplacement): Use evalAndPrintBackendStmt. (registerRedexForm): Likewise. (proclaimCapsuleFunction): Use printBackendStmt. * interp/Makefile.in (lisp-backend.$(FASLEXT)): Require nlib.$(FASLEXT)
2012-05-20 * interp/parsing.lisp (CONVERSATION): Remove.dos-reis10-371/+108
(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.
2012-05-20 * boot/utility.boot (strinSuffix?): New.dos-reis5-8/+46
* boot/translator.boot (shoeRemovebootIfNec): Use it.