aboutsummaryrefslogtreecommitdiff
path: root/src/interp
AgeCommit message (Collapse)AuthorFilesLines
2012-08-20 * interp/util.lisp (BUILD-INTERPSYS): loadDelayedFFI early.dos-reis3-10/+1
* interp/sys-driver.boot (%sysInit): Do not call sys-osInitCLispFFI (no longer necessary.) * boot/translator.boot (genModuleFinalization): Generate forms to be evaluated at load and execution time, instead of a function call. * interp/spad.lisp (process): Remove.
2012-08-19 * configure.ac: Define Automake conditional OA_DELAYED_FFI.dos-reis4-7/+32
* config/open-axiom.m4 (OPENAXIOM_CHECK_DELAYED_FFI): New. (OPENAXIOM_HOST_COMPILERS): Call it. src/ * lisp/core.lisp.in (primitiveLoad): New. Export. ($delayedFFI): Likewise. * lisp/Makefile.in (oa_delay_ffi): New. (edit): Update. * interp/sys-utility.boot: import sys-constants instead of sys-os. * interp/sys-driver.boot (%sysInit): Do not loadSystemRuntimeCore. (loadDelayedFFI): New. (executeSpadScript): Call it. (compileSpadLibrary): Likewise. (buildInitdbHandler): Likewise. (systemMain): Likewise. * interp/util.lisp (BUILD-INTERPSYS): Likewise. * interp/Makefile.in (oa_target_moddir): New. (OA_FFI_MOD): Likewise. (OA_FFI_OBJ): Define conditionally. (OBJS): Use it. ($(oa_target_delayed)): New rule. (oa_target_delayed): New. (oa_target_ffi): Define conditionally. (${SAVESYS}): Require it. (${AXIOMSYS}): Likewise. (sys-utility.$(FASLEXT)): Now require sys-constants.$(FASLEXT).
2012-06-10 * interp/io.boot (%SourceLine): New.dos-reis3-52/+83
(%LoadUnit): Likewise. (readLoadUnitSource): Likewise. (%Reader): Remove input stream field. Include load unit and next lines fields. Adjust users.
2012-06-10Do remove newaux.lispdos-reis1-101/+0
2012-06-10 * interp/newaux.lisp (MAKEOP): Move to spad-parser.boot.dos-reis2-4/+37
Remove file. * interp/Makefile.in: Adjust.
2012-06-10 * interp/newaux.lisp: Move Led property setting to spad-parser.boot.dos-reis2-36/+56
2012-06-10 * interp/newaux.lisp: Move Nud property setting to spad-parser.boot.dos-reis3-43/+46
Import sys-utility. * interp/Makefile.in: Adjust.
2012-06-10 * interp/spad-parser.boot: Fix thinkos from previous commit.dos-reis1-0/+14
2012-06-10 * interp/preparse.lisp: Remove.dos-reis3-177/+88
* interp/spad-parser.boot: Do not include. Import lexing instead. * interp/Makefile.in: Adjust.
2012-06-09 * interp/io.boot (%Reader): Add idx field.dos-reis3-9/+9
* interp/preparse.lisp ($INDEX): Remove. Adjust users.
2012-06-07fix thinkodos-reis1-1/+1
2012-06-07 * interp/lexing.boot: Move %Line to io.boot.dos-reis5-67/+95
* interp/debug.lisp (SPAD_LONG_ERROR): Take a reader parameter. Tidy.
2012-06-06 * interp/io.boot (readePendingLines): Rename from readerLines.dos-reis3-9/+9
Adjust callers.
2012-06-05 * interp/io.boot (readerDeferLine): New.dos-reis3-5/+7
* interp/preparse.lisp (preparse1): Use it. * interp/spad-parser.boot (preparse): Likewise.
2012-06-04 * interp/spad-parser.boot (preparse): Tidy.dos-reis1-5/+2
2012-06-04 * interp/spad-parser.boot (findCommentBlock): Lose lastdos-reis2-5/+5
parameter. Adjust callers.
2012-06-04 * interp/spad.lisp (SPAD): Adjust.dos-reis7-553/+540
* 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-reis2-25/+13
(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-reis4-72/+69
* 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-reis1-19/+11
* 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-reis1-1/+1
(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-05-29 * boot/parser.boot (%ParserState): New.dos-reis1-7/+0
(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-reis1-41/+35
(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-reis2-12/+0
* 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/tokens.boot: freshLine, functionSymbol?, and symbolGlobal?dos-reis10-13/+13
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-reis5-189/+9
* interp/spad.lisp (knownEqualPred): Move to buildom.boot (hashable): Likewise. Remove junk. * interp/debug.lisp: Remove junk. * interp/vmlisp.lisp: Likewise.
2012-05-24 * boot/scanner.boot (lexerLineLength): New.dos-reis1-2/+2
(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-23 * interp/database.boot (%Constructor): New.dos-reis4-31/+42
(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-reis2-12/+9
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-reis27-590/+494
(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 * interp/br-search.boot: Use findChar and findString in lieu of STRPOS.dos-reis10-21/+23
* 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-reis1-6/+0
(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-reis1-17/+8
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-21 * interp/parsing.lisp: Remove.dos-reis9-302/+49
* 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-reis1-15/+13
avoiding awakening GCL bug and quadratic traversal of lines. (parsePiles): Simplify.
2012-05-21 * interp/spad.lisp (S-PROCESS): Rename to translateSpad and movedos-reis3-56/+32
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-reis4-108/+44
(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-reis3-42/+2
(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-reis10-49/+21
(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-reis8-14/+39
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-reis9-371/+78
(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 Fix build breakage with CLozure CL.dos-reis1-3/+0
* lisp/core.lisp.in ($stdin): Demote to DEFPARAMETER. ($stdout): Likewise.
2012-05-20 * boot/ast.boot (shoeCompTran): Simplify.dos-reis1-1/+1
(shoeCompTran1): Partially defer translation of fluid variable definition. (bindFluidVars!): New. Complete translation. (groupFluidVars): New. * interp/newfort.boot (fortFormatIntrinsics): Remove redundant return.
2012-05-12 * interp/c-util.boot: Miscellaneous cleanup.dos-reis19-52/+49
* interp/compiler.boot: Likewise. * interp/database.boot: Likewise. * interp/debug.lisp: Likewise. * interp/format.boot: Likewise. * interp/g-timer.boot: Likewise. * interp/ht-util.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/macros.lisp: Likewise. * interp/monitor.lisp: Likewise. * interp/msgdb.boot: Likewise. * interp/newfort.boot: Likewise. * interp/nlib.lisp: Likewise. * interp/parsing.lisp: Likewise. * interp/pf2atree.boot: Likewise. * interp/pf2sex.boot: Likewise. * interp/posit.boot: Likewise. * interp/sfsfun.boot: Likewise. * interp/util.lisp: Likewise.
2012-05-12whitespace onlydos-reis1-11/+23
2012-05-12 * interp/io.boot (findString): New.dos-reis2-4/+7
* interp/preparse.lisp: Use it instead of SEARCH.
2012-05-12 * interp/io.boot (findChar): New.dos-reis2-3/+8
* interp/preparse.lisp (preparse1): Use it instead of POSITION.
2012-05-11 * interp/preparse.lisp (PARSEPRINT): Move to spad-parser.boot.dos-reis2-8/+9
Rename as parsePrint.
2012-05-11 * interp/preparse.lisp (ADD-PARENS-AND-SEMIS-TO-LINE): Move todos-reis2-54/+42
spad-parser.boot Rename as addParensAndSemisToLine. (PARSEPILES): Move spad-parser.boot. Rename as parsePiles.