aboutsummaryrefslogtreecommitdiff
path: root/src/boot/strap
AgeCommit message (Collapse)AuthorFilesLines
2013-06-20Tidy codegen for Boot inerts.dos-reis1-2/+2
2013-06-20Allow inerts in Boot.dos-reis4-5/+20
2013-06-15 * interp/nruncomp.boot (NRTsetVector4Part1): Add environment parameter.dos-reis4-13/+47
Adjust caller. (NRTsetVector4a): Likewise. Avoid special variable for environment. * boot/utility.boot: Add and export substSource, substTarget. * interp/define.boot: Use them.
2013-06-01Support --output in compiler, for bootstrapping stage.dos-reis4-16/+25
2013-05-27Rename MAKE-FULL-FILENAME to makeFullFilename.dos-reis2-6/+9
2013-05-26Rename MAKE-FILENAME to makeFilename and re-implement in Boot.dos-reis5-62/+58
2012-08-20 * interp/util.lisp (BUILD-INTERPSYS): loadDelayedFFI early.dos-reis1-50/+46
* 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 * boot/ast.boot (genSBCLnativeTranslation): Do no prepend andos-reis1-3/+1
underbar when WIN32 (no longer necessary.) * include/open-axiom.h (OPENAXIOM_EXPORT): Fix thino.
2012-08-18 * boot/translator.boot (shoeOutParse): Fix thinko.dos-reis1-3/+3
* lib/cfuns-c.c (oa_getcwd): Tidy. (oa_spawn): Likewise. * lib/sockio-c.c (send_string_len): Likewise. * utils/command.cc (option_value): Likewise. (execute_core): Likewise.
2012-06-10 * interp/preparse.lisp: Remove.dos-reis2-4/+8
* interp/spad-parser.boot: Do not include. Import lexing instead. * interp/Makefile.in: Adjust.
2012-06-03 * interp/lexing.boot (%Line): Now a record structure.dos-reis2-4/+8
* 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-reis3-111/+134
(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-reis1-350/+0
$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-reis3-54/+59
Remove references to $op.
2012-06-01 * boot/ast.boot (%LoadUnit): Add fields for side conditions.dos-reis3-16/+21
* boot/parser.boot: Adjust.
2012-06-01 * boot/ast.boot (%LoadUnit): Add fields for let var and is vardos-reis1-24/+38
sequence numbers. Eliminate $letGenVarCounter and $isGenVarCounter.
2012-05-31 * boot/ast.boot: Add a %LoadUnit parameter to most functions.dos-reis3-223/+278
Adjust callers. * boot/translator.boot: Tidy.
2012-05-30 * boot/parser.boot: Replace references to $ttok.dos-reis2-45/+38
2012-05-30 * boot/parser.boot (%ParserState): Add field for current token.dos-reis3-114/+119
Replace references to $stok.
2012-05-30 * boot/ast.boot (bfSpecificErrorHere): New.dos-reis3-62/+81
(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-reis2-41/+41
* boot/translator.boot (shoeOutParse): Likewise.
2012-05-30 * boot/parser.boot: Remove references to $bpParentCount.dos-reis2-17/+23
* boot/translator.boot (shoeOutParse): Likewise.
2012-05-30 * boot/parser.boot: Remove references to $stack.dos-reis2-68/+74
* boot/translator.boot: Likewise.
2012-05-30 * boot/parser.boot: Add parser state argument to more functions.dos-reis2-312/+360
Remove references to $inputStream. * boot/translator.boot (shoeOutParse): Remove $inputStream.
2012-05-29 * boot/parser.boot (%ParserState): New.dos-reis4-522/+653
(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/io.boot (findChar): Do not define here.dos-reis2-10/+20
* 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-reis3-87/+26
(backquote): Do not quote integer and string literals.
2012-05-26 * boot/tokens.boot: freshLine, functionSymbol?, and symbolGlobal?dos-reis1-2/+3
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-24 * boot/scanner.boot: Eliminate fluid variable $n.dos-reis1-157/+208
(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-reis1-65/+69
(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-reis1-53/+55
2012-05-24 * boot/scanner.boot (%Lexer): New record structure.dos-reis1-154/+201
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-reis4-59/+71
* 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 * boot/includer.boot (%SourceLine): New datatype.dos-reis3-19/+35
(makeSourceLine): New. Use source line macro accessors. * boot/pile.boot: Likewise. * boot/scanner.boot: Likewise.
2012-05-23 * boot/tokens.boot (%Token): New datatype.dos-reis5-71/+62
(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-28/+31
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-reis4-57/+257
* 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-reis8-4817/+4694
(shoePROG): Likewise. (declareLocalVars): New. (maybeAddBlock): Likewise. (hasReturn?): Likewise. (shoeCompTran): Tidy.
2012-05-20 * boot/utility.boot (strinSuffix?): New.dos-reis2-4/+28
* boot/translator.boot (shoeRemovebootIfNec): Use it.
2012-05-20 * boot/ast.boot (shoeCompTran): Simplify.dos-reis4-158/+263
(shoeCompTran1): Partially defer translation of fluid variable definition. (bindFluidVars!): New. Complete translation. (groupFluidVars): New. * interp/newfort.boot (fortFormatIntrinsics): Remove redundant return.
2012-05-20 * boot/ast.boot (shoeCompTran1): Take variable sets by reference.dos-reis4-116/+133
Remove globals. Adjust caller. (shoeCompTran): Replace fluid variables by references.
2012-05-19 * boot/tokens.boot: symbolBinding is now builtin.dos-reis2-53/+52
* boot/ast.boot (%Ast): Add %Dynamic variant. (bfColonColon): Use symbolBinding instead of FIND-SYMBOLS. (compFluid): Return a %Dynamic form. Adjust callers. (shoeCompTran): Tidy. * boot/translator.boot (BOOTLOOP): Tidy. (BOOTPO): Likewise.
2012-05-08 * boot/tokens.boot: Export char. Do not rename maxIndex.dos-reis1-6/+7
* lisp/core.lisp.in (maxIndex): Define and export. * interp/bootlex.lisp: Adjust. * interp/parsing.lisp: Likewise. * interp/macros.lisp: Likewise. (DROPTRAILINGBLANKS): Remove. (BLANKP): Likewise. (NONBLANKLOC): Likewise. * interp/io.boot (trimTrailingBlank): New. (firstNonblankCharPosition): Likewise. * interp/preparse.lisp: Use them. Adjust. * interp/sys-macros.lisp (char): Remove. * interp/vmlisp.lisp (MAXINDEX): Likewise. * interp/br-search.boot (pmTransFilter): Fix bogus uses of char. * interp/debug.lisp: Likewise. * interp/g-util.boot: Likewise. * interp/ht-root.boot: Likewise. * interp/i-output.boot: Likewise. * interp/i-syscmd.boot: Likewise.
2012-04-29 * boot/ast.boot (bfNumber?): Rename from bfSmintable. Check fordos-reis1-4/+5
floating point literals too. Adjust callers. (bfLessp): Check for integer or floating pointer numbers. * interp/vmlisp.lisp (complex?): New. (complex): Likewise. (realPart): Likewise. (imagPart): Likewise. (conjugate): Likewise. (sqrt): Likewise.
2012-01-12 * boot/parser.boot (bpFunction): New.dos-reis3-12/+37
(bpConstTok): Include it. * boot/ast.boot (bfFunction): New. * boot/tokens.boot: `function' is now a keyword.
2012-01-09 * boot/parser.boot (bpRequire): New. Use it throughout this module.dos-reis1-84/+74
2012-01-08 * boot/ast.boot (bfEnum): New.dos-reis2-16/+28
* boot/translator.boot (translateToplevel): Use it to translate enumeration definitions. * interp/types.boot (%ConstructorKind): Use new syntax.
2011-12-28 * interp/vmlisp.lisp (SORTBY): Remove.dos-reis3-41/+78
(QSORT): Likewise. * interp/c-util.boot (formal?): Rename from isFormal. Avoid POSITION. * interp/sys-utility.boot (sortBy): New. * interp/br-op1.boot: Use it. * interp/clam.boot: Likewise. * interp/define.boot: Likewise. * interp/i-output.boot: Likewise. * interp/i-coerfn.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/showimp.boot: Likewise. * boot/tokens.boot: "<-" is now a token. * boot/ast.boot (bfKeyArg): New. (bfExpandKeys): Likewise. (bfApplication): Use it. * boot/parser.boot (bpKeyArg): New. (bpAssign): Use it. Parse named arguments.
2011-12-28 * boot/tokens.boot: Remove redundant renaming of REM.dos-reis1-23/+24
loopBody and loopExit are not selectors. * interp/i-output.boot: Include sys-utility. * interp/sys-utility.boot (last): New macro. (loopBody): Likewise. * interp/vmlisp.lisp (LASTNODE): Remove. (LASTPAIR): Likewise. (last): Do not define here.
2011-12-28 * boot/tokens.boot: Do not rewrite drop and take.dos-reis2-20/+56
* boot/utility.boot (drop): Define and export. (take): Likewise. * interp/br-con.boot: Use take, not TAKE; use drop, not DROP. * interp/br-data.boot: Likewise. * interp/br-op1.boot: Likewise. * interp/br-saturn.boot: Likewise. * interp/c-doc.boot: Likewise. * interp/c-util.boot: Likewise. * interp/cattable.boot: Likewise. * interp/clammed.boot: Likewise. * interp/compiler.boot: Likewise. * interp/database.boot: Likewise. * interp/define.boot: Likewise. * interp/guess.boot: Likewise. * interp/htsetvar.boot: Likewise. * interp/i-analy.boot: Likewise. * interp/i-eval.boot: Likewise. * interp/i-funsel.boot: Likewise. * interp/i-map.boot: Likewise. * interp/i-output.boot: Likewise. * interp/i-special.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/i-toplev.boot: Likewise. * interp/i-util.boot: Likewise. * interp/nruncomp.boot: Likewise. * interp/parse.boot: Likewise. * interp/record.boot: Likewise. * interp/setvars.boot: Likewise. * interp/slam.boot: Likewise. * interp/trace.boot: Likewise. * interp/word.boot: Likewise. * interp/macros.lisp (DROP): Remove. (TAKE): Likewise.