aboutsummaryrefslogtreecommitdiff
path: root/src/boot/ast.boot
AgeCommit message (Collapse)AuthorFilesLines
2012-05-26 * boot/ast.boot (bfMDef): Simplify.dos-reis1-7/+3
(backquote): Do not quote integer and string literals.
2012-05-26 * boot/tokens.boot: freshLine, functionSymbol?, and symbolGlobal?dos-reis1-3/+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/tokens.boot: "@" is now a new keyword.dos-reis1-0/+4
* boot/ast.boot (bfRestrict): New. (bpTyped): Rename from bpTagged. Accept type restriction. * boot/utility.boot (drop): Restrict the result to a %List.
2012-05-22 * interp/lexing.boot (%Token): Now an actual type defined as ados-reis1-1/+4
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-reis1-0/+18
* 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-reis1-13/+19
(shoePROG): Likewise. (declareLocalVars): New. (maybeAddBlock): Likewise. (hasReturn?): Likewise. (shoeCompTran): Tidy.
2012-05-20 * boot/ast.boot (shoeCompTran): Simplify.dos-reis1-14/+30
(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-reis1-30/+32
Remove globals. Adjust caller. (shoeCompTran): Replace fluid variables by references.
2012-05-19 * boot/tokens.boot: symbolBinding is now builtin.dos-reis1-15/+10
* 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-04-29 * boot/ast.boot (bfNumber?): Rename from bfSmintable. Check fordos-reis1-7/+7
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-reis1-0/+2
(bpConstTok): Include it. * boot/ast.boot (bfFunction): New. * boot/tokens.boot: `function' is now a keyword.
2012-01-08 * boot/ast.boot (bfEnum): New.dos-reis1-0/+3
* 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-reis1-1/+13
(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-10 * boot/parser.boot (bpArgtypeList): Accept mapping types.dos-reis1-0/+12
* boot/ast.boot (bfType): New. * boot/translator.boot (genDeclaration): Use it. * boot/utility.boot (every?): New. Export. (any?): Likewise. (takeWhile): Lilkewise.
2011-10-30 * interp/sys-macros.lisp (MKPF1): Tidy.dos-reis1-0/+1
* interp/sys-constants.boot ($QueryVariables): New. * interp/define.boot ($whreDecls): Remove. (checkRepresentation): Take a DB as first parameter. Adjust Callers. (buildConstructorCondition): New (deduceImplicitParameters): Likewise (compDefineCategory2): Use it. (compDefineFunctor1): Likewise. (typeDependencyPath): Remove. (inferConstructorImplicitParameters): Likewise. * interp/compiler.boot (compTopLevel): Do not bind $whereDecls. (recordDeclarationInSideCondition): Take additional reference parameter to the list of processed decls. Adjust callers. (compWhere): Record any side decls in compilation environment. * interp/c-util.boot (makeCompilationData): Initialize implicit data. (dbParameters): New. (dbImplicitData): New accessor macro. (dbImplicitParameters): New. (dbImplicitConstraints): Likewise. (dbSubstituteFormals): Likewise. (dbSubstituteQueries): Likewise. * interp/database.boot (fixUpPredicate): Tidy. * boot/utility.boot (applySubst): Early exit on identity substitution. (applySubst!): Likewise. (applySubstNQ): Likewise. * boot/ast.boot (bfIS1): Accept pattern matching against Boolean constant true.
2011-10-26 Restore Clozure CL-based build. CCL's FFI interfacedos-reis1-1/+1
changed at some point in time. * lisp/core.lisp.in (AxiomCore) [CCL]: Import and export FFI-related symbols.
2011-10-03 Cleanup.dos-reis1-15/+15
2011-10-02 * boot/utility.boot (objectAssoc): New. Export.dos-reis1-4/+4
* boot/ast.boot: Use it. instead of ASSOC. * boot/translator.boot (packageBody): Tidy. * interp/astr.boot: Use objectAssoc instead of ASSQ. * interp/br-con.boot: Likewise. * interp/br-op1.boot: Likewise. * interp/br-saturn.boot: Likewise. * interp/buildom.boot: Likewise. * interp/c-util.boot: Likewise. * interp/category.boot: Likewise. * interp/clam.boot: Likewise. * interp/compiler.boot: Likewise. * interp/define.boot: Likewise. * interp/functor.boot: Likewise. * interp/g-util.boot: Likewise. * interp/i-coerce.boot: Likewise. * interp/i-coerfn.boot: Likewise. * interp/i-funsel.boot: Likewise. * interp/i-object.boot: Likewise. * interp/i-output.boot: Likewise. * interp/i-resolv.boot: Likewise. * interp/i-special.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/i-util.boot: Likewise. * interp/int-top.boot: Likewise. * interp/lisplib.boot: Likewise. * interp/msg.boot: Likewise. * interp/posit.boot: Likewise. * interp/termrw.boot: Likewise. * interp/trace.boot: Likewise. * interp/sys-utility.boot (upwardCut): New. * interp/spad.lisp: Use it. * interp/util.lisp: Likewise. * interp/spaderror.lisp: Likewise. * interp/vmlisp.lisp (ASSEMBLE): Remove. (ASSQ): Likewise. (MEMQ): Likewise. (NAMEDERRSET): Likewise. (ORADDTEMPDEFS): Likewise. * interp/macros.lisp (QLASSQ): Move to vmlisp.lisp. (LASSQ): Remove.
2011-09-30 * boot/ast.boot (bfTableIteratorBindingForm): New.dos-reis1-6/+21
(bfExpandTableIters): Use it. * boot/initial-env.lisp (HKEYS): Remove. * boot/tokens.boot (shoeDictCons): Iterate directly over shoeKeyTable. (shoePunCons): Likewise. * boot/translator.boot (shoeReport): Iterate directly over $bootUsed. (shoeXReport): Likewise.
2011-09-30 * boot/ast.boot (bfFor): Tidy. Handle hashtable iterator forms.dos-reis1-7/+48
(bfIterateTable): New. (separateIterators): Likewise. (bfExpandTableIters): Likewise. (bfLp1): Use them.
2011-08-12 * boot/ast.boot (shoeCompTran1): Translate extended vector-forms.dos-reis1-3/+12
* interp/c-util.boot: Use vector instead of LIST2VEC. * interp/define.boot: Likewise. * interp/i-coerce.boot: Likewise. * interp/i-coerfn.boot: Likewise. * interp/i-funsel.boot: Likewise. * interp/i-map.boot: Likewise. * interp/i-special.boot: Likewise. * interp/interop.boot: Likewise. * interp/nruncomp.boot: Likewise. * interp/slam.boot: Likewise.
2011-08-07cleanupdos-reis1-2/+2
2011-08-06cleanupdos-reis1-24/+32
2011-08-05cleanupdos-reis1-21/+18
2011-08-04 * boot/ast.boot (bfFlattenSeq): Rewrite.dos-reis1-15/+13
(bfMKPROGN): Tidy.
2011-08-04cleanupdos-reis1-8/+5
2011-08-04 * boot/ast.boot (bfSTEP): Synthetize artificial variable fordos-reis1-0/+2
unnamed loop index.
2011-07-14 * boot/ast.boot (bfIS1): Tidy test for cons cells.dos-reis1-0/+1
2011-06-22 * boot/ast.boot (shoeEVALANDFILEACTQ): Remove.dos-reis1-5/+1
(bfMain): Don't use it. (translateToplevelExpression): Likewise. * interp/Makefile.in (stamp): $(AUTO) is no more. (all-interpsys): Likewise.
2011-06-05 * boot/ast.boot: Remove debugging statement.dos-reis1-1/+0
* driver/Makefile.in (open-axiom$(EXEEXT)): Link statically.
2011-05-29 * interp/sys-utility.boot (displayTextFile): New.dos-reis1-1/+1
* interp/i-syscmd.boot (summary): Use it. (copyright): Likewise. * algebra/net.spad.pamphlet: Replace closeFile with closeStream. * boot/translator.boot: Likewise. * interp/as.boot: Likewise. * interp/ax.boot: Likewise. * interp/br-saturn.boot: Likewise. * interp/br-search.boot: Likewise.
2011-05-29 * lisp/core.lisp.in (readExpr): New.dos-reis1-0/+1
* interp/as.boot: Replace READLINE with readLine. * interp/br-data.boot: Likewise. * interp/br-saturn.boot: Likewise. * interp/br-search.boot: Likewise. * interp/c-doc.boot: Likewise. * interp/cstream.boot: Likewise. * interp/g-error.boot: Likewise. * interp/ht-root.boot: Likewise. * interp/htcheck.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/msgdb.boot: Likewise. * interp/server.boot: Likewise. * interp/topics.boot: Likewise. * interp/compat.boot (READLINE): Remove. * interp/sys-macros.lisp (shoeConsole): Remove. (shoeInputFile): Likewise. (shoeread-line): Likewise. * boot/ast.boot (bfQ): %nothing only needs EQ. * algebra/files.spad.pamphlet (File) [read!, readIfCan!]: Use readExpr instead of VMREAD. Avoid PLACEP (TextFile) [readLine!, readLineIfCan!]: Likewise.
2011-05-26 * boot/ast.boot (shoeCompTran1): Translate arguments to vectordos-reis1-2/+6
constructor too.
2011-05-21more cleanupdos-reis1-6/+6
2011-05-18 * boot/translator.boot: Remove bindings of $GenVarCounter.dos-reis1-1/+1
* boot/parser.boot (bpOutItem): Bind it here.
2011-05-18more Boot cleanupdos-reis1-11/+17
2011-05-16 * boot/ast.boot (bfAtScope): New.dos-reis1-0/+4
* boot/parser.boot (bpDo): Accept scoped expressions. * boot/translator.boot: Cleanup.
2011-05-16 * boot/tokens.boot: "do" is now a keyword.dos-reis1-0/+3
* boot/ast.boot (bfDo): New. * boot/parser.boot (bpDo): New. (bpReturn): Include do-expressions. * interp/vmlisp.lisp (do): Remove.
2011-05-15 * boot/ast.boot (shoeCompTran1): Don't indiscriminately walk CASEdos-reis1-0/+12
forms. Translate %Namespace forms too. * boot/parser.boot (bpApplication): Include Namespace too.
2011-05-15cleanupdos-reis1-2/+0
2011-05-14more cleanupdos-reis1-23/+23
2011-05-14cleanupdos-reis1-2/+2
2011-05-12 * boot/initial-env.lisp (MAKE-HASHTABLE): Remove.dos-reis1-2/+4
(BEVC-MAKE-FULL): Likewise. (MAKE-BVEC): Likewise. * boot/tokens.boot (shoeKeyTableCons): Adjust. (shoePunCons): Likewise. (shoeDfu): Likewise. (shoeXref): Likewise.
2011-05-05more cleanupdos-reis1-1/+1
2011-05-02 * boot/ast.boot (idList?, charList?, stringLits?): New.dos-reis1-0/+24
(bfMember): Use them for special cases. * boot/parser.boot (bpDefinition): Stop support MDEF forms. (bpMdef, bpMDefTail): Remove. * boot/tokens.boot: "==>" is no longer a token.
2011-05-01 * interp/buildom.boot: Replace use of EQSUBSTLIST with applySubst.dos-reis1-1/+1
* interp/c-util.boot: Likewise. * interp/cattable.boot: Likewise. * interp/compiler.boot: Likewise. * interp/define.boot: Likewise. * interp/format.boot: Likewise. * interp/functor.boot: Likewise. * interp/hashcode.boot: Likewise. * interp/i-output.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/lisplib.boot: Likewise. * interp/modemap.boot: Likewise. * interp/rulesets.boot: Likewise. * interp/slam.boot: Likewise. * interp/sys-macros.lisp (APPLYR, TAILFN, TAIL, rplac): Remove as unused.
2011-05-01 * boot/tokens.boot: Don't rename append.dos-reis1-10/+12
* boot/parser.boot (bpTyping): Support universally quantified types. * boot/ast.boot: Rewrite APPEND as append. (%Forall): New AST node. * boot/translator.boot: Translate it.
2011-04-30 * boot/ast.boot (bfAppend): Write in full.dos-reis1-3/+10
* interp/ptrees.boot (pfAppend): Likewise.
2011-04-30more cleanupdos-reis1-59/+59
2011-04-30 * interp/vmlisp.lisp (remove): Remove.dos-reis1-3/+3
(REMOVEQ, NREMOVEQ): Likewise. * boot/utility.boot (removeSymbol, removeScalar, removeValue) (remove): New. * boot/ast.boot (bfMDef): Use applySubst in lieu of SUBLIS.