aboutsummaryrefslogtreecommitdiff
path: root/src/interp/cparse.boot
AgeCommit message (Collapse)AuthorFilesLines
2016-02-01Support ')read' of Boot fileGabriel Dos Reis1-4/+8
Allow the system command to ')read' a Boot source file: the involves (1) compiling Boot to machine code (2) loading the resulting FASL in the current system Note that if the boot file has any dependency in terms of 'import', one needs to set up the $LoadDirectories appropriately, or else the system will crash. In particular, if you're modifying OpenAxiom source files you need to include the appropriate directories containing OpenAxiom fasl files.
2015-12-24Tidy uses of apply.Gabriel Dos Reis1-25/+25
2015-12-24Replace FUNCALL with apply.Gabriel Dos Reis1-15/+15
2014-11-27Replace PATHNAME-* Lisp API with filePath* API.dos-reis1-2/+2
2013-05-27Rename MAKE-FULL-FILENAME to makeFullFilename.dos-reis1-2/+2
2012-05-25/EDITFILE cleanupdos-reis1-1/+1
2012-01-14 * lisp/core.lisp.in (mkIntArray): New. Export.dos-reis1-0/+27
* interp/patches.lisp (/RF): Move to cparse.boot. (/RQ): Likewise. (/RQ,LIB): Likewise. (/RF-1): Likewise. (/EF): Move to spad.lisp. (construct): Remove. (READSPADEXPR): Likewise. (SHAREDITEMS): Likewise. (installStandardTestPackages): Likewise. (spadtestValueHook): Likewise. (testError): Likewise. ($TestOptions): Likewise. (rebuild): Likewise. ($ViewportProcessToWatch): Likewise. (setViewportProcess): Likewise. (waitForViewport): Likewise. * interp/i-analy.boot (pushDownOp?): Use mkIntArray in place of GETZEROVEC. * interp/i-funsel.boot (argCouldBelongToSubdomain): Likewise. * interp/i-intern.boot (flagArguments): Likewise.
2011-04-27 * interp/br-util.boot (dbInfovec): Move to c-util.bootdos-reis1-3/+3
2011-04-21 * boot/tokens.boot: Don't rename nreverse.dos-reis1-4/+4
* boot/utility.boot (reverse!): Define. * boot/parser.boot: Use reverse! instead of NREVERSE. * boot/ast.boot: Generate reverse! forms instead of NREVERSE.
2011-04-19cleanupdos-reis1-2/+2
2011-04-15misc cleanupdos-reis1-2/+2
2010-05-22 * interp/cparse.boot (npDefinitionItem): Consider a declaration asdos-reis1-0/+1
a definition item too. * interp/i-map.boot (addDefMap): Don't confuse constant with niladic functions. * interp/pf2sex.boot (pfDefinition2Sex): Don't be confused by typed constant definitions.
2010-05-22 * interp/ptrees.boot (pfWith): Now a function of two arguments.dos-reis1-11/+3
(pfWithWithon): Remove. (pfDefinableName?): New. (pfCheckItOut): Use it. * interp/cparse.boot (npWith): Simplify. * interp/pf2sex.boot (pfWith2Sex): Adjust. (pfAdd2Sex): Tidy.
2010-05-22 * interp/cparse.boot (npQuiver): Redefine. Now send Applicationdos-reis1-9/+9
to Application. (npTypedForm): Replace Application with Quiver. (npTypified): Likewise. (npTagged): Use npTypedForm not npTypedForm1. (npDiscrim): Now extend Relation, not Quiver. (npMdef): Allow same LHS as npDef. (npSingleRule): Likewise. * boot/ast.boot: Replace CONCAT with strconc. Replace SYMBOL-NAME with PNAME. * boot/scanner.boot: Likewise. * boot/translator.boot: Likewise.
2010-05-18 * interp/cparse.boot: Clean up.dos-reis1-602/+687
2010-05-10 Add lambda expression syntax to Boot.dos-reis1-9/+9
* boot/parser.boot (bpLambda): New. * boot/ast.boot (bfLambda): New. * boot/tokens.boot: Add "+->" as token. * interp/cparse.boot: Use lambda expression syntax. * interp/c-util.boot: Likewise.
2010-05-09 * interp/bc-solve.boot: Move cleanup.dos-reis1-24/+24
* interp/br-con.boot: Likewise. * interp/br-op1.boot: Likewise. * interp/br-saturn.boot: Likewise. * interp/br-search.boot: Likewise. * interp/br-util.boot: Likewise. * interp/c-util.boot: Likewise. * interp/cattable.boot: Likewise. * interp/cparse.boot: Likewise. * interp/cstream.boot: Likewise. * interp/fortcall.boot: Likewise. * interp/g-timer.boot: Likewise. * interp/ht-util.boot: Likewise. * interp/htcheck.boot: Likewise. * interp/htsetvar.boot: Likewise. * interp/i-map.boot: Likewise. * interp/i-output.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/i-toplev.boot: Likewise. * interp/i-util.boot: Likewise. * interp/incl.boot: Likewise. * interp/int-top.boot: Likewise. * interp/interop.boot: Likewise. * interp/intfile.boot: Likewise. * interp/lisplib.boot: Likewise. * interp/macex.boot: Likewise. * interp/msgdb.boot: Likewise. * interp/newfort.boot: Likewise. * interp/nrunfast.boot: Likewise. * interp/nrungo.boot: Likewise. * interp/pathname.boot: Likewise. * interp/profile.boot: Likewise. * interp/pspad1.boot: Likewise. * interp/ptrees.boot: Likewise. * interp/scan.boot: Likewise. * interp/sys-os.boot: Likewise. * interp/sys-utility.boot: Likewise. * interp/wi1.boot: Likewise.
2010-05-09 * interp/cattable.boot: Replace call to CONS with bracket syntax.dos-reis1-2/+3
* interp/clammed.boot: Likewise. * interp/cparse.boot: Likewise. * interp/dq.boot: Likewise. * interp/fortcall.boot: Likewise. * interp/g-boot.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-spec1.boot: Likewise. * interp/i-spec2.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/incl.boot: Likewise. * interp/interop.boot: Likewise. * interp/lisplib.boot: Likewise. * interp/msgdb.boot: Likewise. * interp/newfort.boot: Likewise. * interp/nruncomp.boot: Likewise. * interp/nrunopt.boot: Likewise. * interp/rulesets.boot: Likewise. * interp/scan.boot: Likewise. * interp/termrw.boot: Likewise. * interp/wi2.boot: Likewise.
2010-05-09 * interp/cparse.boot: Replace call to cons with bracket syntax.dos-reis1-8/+9
* interp/cstream.boot: Likewise. * interp/database.boot: Likewise. * interp/define.boot: Likewise. * interp/g-boot.boot: Likewise. * interp/g-util.boot: Likewise. * interp/i-analy.boot: Likewise. * interp/i-coerce.boot: Likewise. * interp/i-funsel.boot: Likewise. * interp/i-output.boot: Likewise. * interp/i-spec1.boot: Likewise. * interp/i-spec2.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/incl.boot: Likewise. * interp/int-top.boot: Likewise. * interp/macex.boot: Likewise. * interp/msgdb.boot: Likewise. * interp/pile.boot: Likewise. * interp/posit.boot: Likewise. * interp/ptrees.boot: Likewise. * interp/scan.boot: Likewise. * interp/setvars.boot: Likewise. * interp/trace.boot: Likewise. * interp/types.boot: Likewise.
2010-05-08 * interp/wi2.boot: Remove more RPLACA and RPLACD uses.dos-reis1-1/+1
* interp/topics.boot: Likewise. * interp/slam.boot: Likewise. * interp/nruncomp.boot: Likewise. * interp/interop.boot: Likewise. * interp/i-toplev.boot: Likewise. * interp/i-spec1.boot: Likewise. * interp/i-resolv.boot: Likewise. * interp/i-output.boot: Likewise. * interp/htsetvar.boot: Likewise. * interp/g-util.boot: Likewise. * interp/g-cndata.boot: Likewise. * interp/functor.boot: Likewise. * interp/dq.boot: Likewise. * interp/define.boot: Likewise. * interp/database.boot: Likewise. * interp/cparse.boot: Likewise. * interp/clam.boot: Likewise. * interp/c-util.boot: Likewise. * interp/br-op1.boot: Likewise. * interp/br-data.boot: Likewise.
2010-05-08 * interp/as.boot: Replace uses of RPLACA and RPLACD with explicitdos-reis1-2/+2
assignment to first and rest fields. * interp/astr.boot: Likewise. * interp/br-con.boot: Likewise. * interp/br-data.boot: Likewise. * interp/br-op1.boot: Likewise. * interp/br-saturn.boot: Likewise. * interp/buildom.boot: Likewise. * interp/c-doc.boot: Likewise. * interp/c-util.boot: Likewise. * interp/cattable.boot: Likewise. * interp/clam.boot: Likewise. * interp/compiler.boot: Likewise. * interp/compress.boot: Likewise. * interp/cparse.boot: Likewise. * interp/cstream.boot: Likewise. * interp/database.boot: Likewise. * interp/define.boot: Likewise. * interp/dq.boot: Likewise. * interp/functor.boot: Likewise. * interp/g-opt.boot: Likewise. * interp/g-util.boot: Likewise. * interp/guess.boot: Likewise. * interp/ht-util.boot: Likewise. * interp/i-analy.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-spec1.boot: Likewise. * interp/i-spec2.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/i-util.boot: Likewise. * interp/interop.boot: Likewise. * interp/mark.boot: Likewise. * interp/modemap.boot: Likewise. * interp/msgdb.boot: Likewise. * interp/newfort.boot: Likewise. * interp/nruncomp.boot: Likewise. * interp/nrunopt.boot: Likewise. * interp/packtran.boot: Likewise. * interp/showimp.boot: Likewise. * interp/termrw.boot: Likewise. * interp/topics.boot: Likewise. * interp/trace.boot: Likewise. * interp/wi2.boot: Likewise. * interp/word.boot: Likewise.
2009-09-26More cleanupdos-reis1-4/+4
2009-09-26 * interp/: More cleanup.dos-reis1-8/+8
2009-09-26 * interp/as.boot: Clean up.dos-reis1-2/+2
* interp/ax.boot: Likewise. * interp/br-con.boot: Likewise. * interp/br-data.boot: Likewise. * interp/br-op1.boot: Likewise. * interp/br-op2.boot: Likewise. * interp/br-saturn.boot: Likewise. * interp/br-search.boot: Likewise. * interp/c-util.boot: Likewise. * interp/category.boot: Likewise. * interp/cattable.boot: Likewise. * interp/clam.boot: Likewise. * interp/compiler.boot: Likewise. * interp/cstream.boot: Likewise. * interp/define.boot: Likewise. * interp/format.boot: Likewise. * interp/fortcall.boot: Likewise. * interp/functor.boot: Likewise. * interp/g-boot.boot: Likewise. * interp/g-opt.boot: Likewise. * interp/g-timer.boot: Likewise. * interp/guess.boot: Likewise. * interp/i-analy.boot: Likewise. * interp/i-coerce.boot: Likewise. * interp/i-coerfn.boot: Likewise. * interp/i-eval.boot: Likewise. * interp/i-funsel.boot: Likewise. * interp/i-intern.boot: Likewise. * interp/i-map.boot: Likewise. * interp/i-object.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/int-top.boot: Likewise. * interp/interop.boot: Likewise. * interp/lisplib.boot: Likewise. * interp/mark.boot: Likewise. * interp/modemap.boot: Likewise. * interp/msg.boot: Likewise. * interp/msgdb.boot: Likewise. * interp/newfort.boot: Likewise. * interp/nrunfast.boot: Likewise. * interp/nrungo.boot: Likewise. * interp/nrunopt.boot: Likewise. * interp/pf2atree.boot: Likewise. * interp/pile.boot: Likewise. * interp/pspad1.boot: Likewise. * interp/ptrees.boot: Likewise. * interp/scan.boot: Likewise. * interp/sfsfun.boot: Likewise. * interp/showimp.boot: Likewise. * interp/slam.boot: Likewise. * interp/trace.boot: Likewise. * interp/wi1.boot: Likewise. * interp/word.boot: Likewise.
2009-09-25 * boot/ast.boot (bfMember): Improve a bit.dos-reis1-1/+1
* boot/tokens.boot: Don't rename 'is' and 'inst'. * boot/parser.boot: Use 'in' instead of 'MEMQ' where approrpriate. * interp/: Likewise.
2009-06-16 Fix SF/2396945dos-reis1-3/+1
* interp/scan.boot: '@@' is no longer a keyword. * interp/cparse.boot (npColonQuery): Remove. * interp/parse.boot (parseAtAt): Likewise. * interp/postpar.boot (postAtAt): Likewise.
2009-05-21 * interp/cparse.boot (npQuantified): New.dos-reis1-13/+18
(npType): Use it. (npDefinitionOrStatement): Likewise. Accept quantified expressions. (npMatch): Remove. (npDef): Adjust. (npMonoType): Likewise. (npDiscrim): Recognize 'is' and 'isnt' patterns.
2009-05-17 * interp/cparse.boot (npTyping): Remove.dos-reis1-17/+0
(npDefaultItemlist): Likewise. (npSDefaultItem): Likewise. (npDefaultItem): Likewise. (npDefaultDecl): Likewise. (npStatement): Don't call npTyping. (npDefinitionItem): Likewise.
2009-01-032009-01-03 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis1-6/+6
* Makefile.pamphlet (AXIOM_SRC_TARGETS): Add all-databases. src/ChangeLog 2009-01-03 Gabriel Dos Reis <gdr@cs.tamu.edu> * lisp/core.lisp.in (|%algebraSystemIsComplete|): New. (|%basicSystemIsComplete|): Use it. * interp/wi1.boot (setqSingle): Use maximalSuperType. (coerceSubset): Simplify. (compCoerce1): Tidy. * interp/i-resolv.boot (resolveTCat): Use superType. * interp/lisplib.boot (findConstructorSlotNumber): Use isSubset. (sigsMatch): Likewise. (findDomainSlotNumber): Likewise. * interp/define.boot (compSubDomain1): Reject for complex subdomain predicate. Support paramterized subdomains. * interp/daase.lisp (interpOpen): Read superdomain slot. (getdatabase): Remove adhoc hardcoded superdomain info. Return superdomain info stored in database. (localnrlib): Read superdomain info. (write-interpdb): Write superdomain info. (database): Add superdomain slot. * interp/g-util.boot (superType): New. (maximalSuperType): Rework. Support parameterized subdomains. (noteSubDomainInfo): New. (isSubDomain): Rework. * interp/c-util.boot (isSubset): Rework. * interp/g-opt.boot (optEQ): Remove. * interp/g-cndata.boot (getImmediateSuperDomain): Remove. (maximalSuperType): Move to g-util.boot. * interp/types.boot (%Constructor): New type specifier. (%Instantiation): Likewise. * interp/compiler.boot (primitiveType): Don't return $NegativeInteger. (maxSuperType): Remove. (hasType): Use maximalSuperType. (satisfies): New. (coerceSubset): Use it. Simplify. * interp/wi2.boot (smallIntegerStep): Use maximalSuperType. * interp/sys-constants.boot ($AtVariables): New. ($NegativeInteger): Remove. ($NonPositiveInteger): Likewise. ($CategoryNames): Category is not a category. * interp/property.lisp: Remove Subsets property settings. * interp/i-coerce.boot (coerceSubDomain): Simplify. (coerceImmediateSubDomain): Remove. (getSubDomainPredicate): Simplify. * interp/category.boot (SourceLevelSubset): Use isSubDomain. (MachineLevelSubset): Likewise. * interp/modemap.boot (mergeModemap): Likewise. (isSuperDomain): Remove. (augModemapsFromDomain): Support parameterized subdomains. * interp/i-util.boot (isSubDomain): Move to g-util.boot. * Makefile.pamphlet (all-databases): New target. * interp/Makefile.pamphlet ($(AXIOMSYS)): Push :open-axiom-algebra-system onto *FEATURES*. * etc/Makefile.in (all-databases): New target.
2008-12-082008-12-07 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis1-0/+12
* interp/g-opt.boot ($simpleVMoperators): New. (isSimpleVMForm): Likewise. (isFloatableVMForm): Likewise. (optLET): Likewise. Expand backend let-forms. * interp/c-util.boot (foldSpadcall): Look into LET and COND forms. (replaceSimpleFunctions): Likewise. (mutateCONDFormWithUnaryFunction): New. (mutateLETFormWithUnaryFunction): Likewise. * interp/compiler.boot (tryCourtesyCoercion): Split from coerce. (compRetractAlternative): Simplify. Now try courtesy coercions before retraction. (compRecoverAlternative): New. (compMatch): Simplify. Implement type recovery too. 2008-12-06 Gabriel Dos Reis <gdr@cs.tamu.edu> * interp/compiler.boot (compRetractAlternative): New. (compMatch): Likewise. Use it to implement pattern macthing for retractable domains. * interp/parse.boot (parseAtAt): New. * interp/postpar.boot (postAtAt): Likewise. (postAlternatives): Likewise. (postMatch): Likewise. * interp/metalex.lisp (Keywords): Remove `otherwise' as keyword. * interp/fnewmeta.lisp (|PARSE-Match|): New local parser. * interp/newaux.lisp (@@): New token. Align wih interpreter. (otherwise): Remove binding specification. (case): Now also a Nud token.
2008-08-09 * interp/buildom.boot: Rename AST code LET to %LET throughout.dos-reis1-1/+1
* interp/c-util.boot: Likewise. * interp/comp.lisp: Likewise. * interp/compiler.boot: Likewise. * interp/cparse.boot: Likewise. * interp/def.lisp: Likewise. * interp/define.boot: Likewise. * interp/functor.boot: Likewise. * interp/g-opt.boot: Likewise. * interp/i-eval.boot: Likewise. * interp/i-intern.boot: Likewise. * interp/i-map.boot: Likewise. * interp/i-spec1.boot: Likewise. * interp/i-spec2.boot: Likewise. * interp/iterator.boot: Likewise. * interp/mark.boot: Likewise. * interp/newaux.lisp: Likewise. * interp/nruncomp.boot: Likewise. * interp/nrunopt.boot: Likewise. * interp/package.boot: Likewise. * interp/parse.boot: Likewise. * interp/pf2atree.boot: Likewise. * interp/pf2sex.boot: Likewise. * interp/postpar.boot: Likewise. * interp/property.lisp: Likewise. * interp/pspad1.boot: Likewise. * interp/pspad2.boot: Likewise. * interp/slam.boot: Likewise. * interp/spad.lisp: Likewise. * interp/wi1.boot: Likewise. * interp/wi2.boot: Likewise.
2008-08-05 * interp/cparse.boot (npWith): Commit to parsing upon `with'.dos-reis1-12/+16
(npAdd): Commit to parsing upon `add'. (npDef): Tell npDefTail to look for '=='. (npMdef): Accept argument to indicate '==' or '==>' forms. (npSingleRule): A Rule is given by '=='. (npDefTail): Take the kind of definition as a parameter. (npDefinitionItem): Macro definitions are definitions. (npMDEFinition): Remove. (npMDEF): Hand off to npMdef to parse macro definitions. (npMacro): Macros introduced by `macro' keyword uses '=='.
2008-08-05 * interp/cparse.boot (npExpress1): Make assignment an expression,dos-reis1-1/+3
therefore a statement.
2008-08-04 * interp/cparse.boot ($npPParg): Remove.dos-reis1-21/+13
($npPCff): Likewise. (npPPff, npPCff): Take an argument. (npPPf): Likewise. (npPPg, npPCg): Likewise. (npPP, npPC): Pass around a suspension of the argument.
2008-07-252008-07-24 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis1-3/+27
* interp/scan.boot: Tidy. * interp/ptrees.boot: Define AST for type schemes. * interp/cparse.boot (npType): Parse type schemes. (npQuantifierVariable): New. (npADD): Accept only monotypes. * interp/pf2sex.boot (pf2Sex1): Handle type schemes. (pfQuantified2Sex): New. 2008-07-23 Gabriel Dos Reis <gdr@cs.tamu.edu> * interp/cparse.boot (npMonoType): Rename from npType.
2008-05-08 * boot/translator.boot (bpOutItem): Handle namespace declaration.dos-reis1-2/+1
Update all boot files to use `namespace' instead of `)package'. * interp/: Likewise.
2008-04-23 * boot/ast.boot: Tidy.dos-reis1-1/+1
* 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.
2007-10-15remove more pamphlets from interp/dos-reis1-0/+2
2007-09-13 * Makefile.pamphlet (OBJS): Don't include ptrop.$(FASLEXT).dos-reis1-0/+988
(ptrees.$(FASLEXT)): New rule. (cparse.$(FASLEXT)): Likewise. * ptrop.boot.pamphlet: Move content to ptrees.boot.pamphlet. * ptrees.boot.pamphlet: Import posit, serror. * cparse.boot: New. Import ptrees. * cparse.boot.pamphlet: Move content to cparse.boot. Remove. * serror.boot: New. (pfSourceStok): Move to posit.boot. (npMissingMate): Move to cparse.boot. (npMissing): Likewise. (npCompMissing): Likewise. (npRecorverTrap): Likewise. (npListAndRecover): Likewise. (npMoveTo): Likewise. * serror.boot.pamphlet: Move content to serror.boot. Remove.