Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Gabriel Dos Reis <gdr@cs.tamu.edu>
Fix AW/431
* algebra/ore.spad.pamphlet (SpareUnivariateSkewPolynomial):
Implement **.
2008-09-01 Gabriel Dos Reis <gdr@cs.tamu.edu>
Make ^ an alias for **.
* interp/postpar.boot (postAtom): Replace "^" with "**".
* interp/format.boot (reportOpSymbol): Announce that "^" is an
alias for "**".
* interp/nrungo.boot (compiledLookup): Be sure to look for "**"
when operation is "^".
* interp/define.boot (noteCapsuleFunctionDefinition): New.
(clearCapsuleFunctionTable): Likewise.
(noteExport): Likewise.
(clearExportsTable): Likewise.
(compDefineCapsuleFunction): Rename "^" to "**". Take a note
of the capsule function being compiled.
(compCapsule): Clear previous capsule functions table.
(doItIf): Keep track of predicate validity.
(compCategory): Clear previous exports table.
(compCategoryItem): Take notes of declared attributes and signatures.
* algebra/catdef.spad.pamphlet (DivisionRing): Remove duplicate
definition for "^".
(Group): Likewise.
(Monoid): Likewise.
(SemiGroup): Likewise.
* algebra/poly.spad.pamphlet (PolynomialRing): Remove duplicate
definitins of "^".
(SparseUnivariatePolynomial): Likewise.
* algebra/multpoly.spad.pamphlet (SparseMultivariatePolynomial):
Remove duplicate definitions for "^".
* algebra/interval.spad.pamphlet (Interval): Remove duplicate
definition for "^".
* algebra/curve.spad.pamphlet (FunctionFieldCategory): Remove
duplicate declaration for represents.
* algebra/strap/: Update cached Lisp translations.
* share/algebra: Update databases.
|
|
|
|
(diagnoseUknownType): Likewise.
* interp/define.boot (compCategoryItem): Use it. Check for
unknown types.
|
|
(mkEvalableCategoryForm): Move to define.boot
|
|
$CategoryFrame with modemap for the constructor we just finished
compiling.
|
|
* interp/sys-driver.boot (AxiomCore::%sysInit): Have ECL quiet.
(initializeGlobalState): Initialize new world states.
* interp/define.boot (compDefine): Tidy.
(compDefineCategory2): Explicitly initialize $TOP_LEVEL and
$definition.
* interp/daase.lisp (|fillDatabasesInCore|): Use
$buildingSystemAlgebra.
* interp/compiler.boot (compMakeDeclaration): Explicitly
initialize $insideExpressionIfTrue.
* boot/translator.boot (AxiomCore::%sysInit): Supper GCL and ECL
compiler notes, but ask for warning.
|
|
(compDefineFunctor1): Likewise.
* interp/wi1.boot (compDefineCategory2): Likewise.
(compDefineFunctor1): Likewise.
|
|
* 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.
|
|
(parseNotEqual): Likewise.
* interp/compiler.boot (compCompilerPredicate): New.
(compileNot): Use it.
* interp/define.boot (compSubDomain1): Likewise.
(doItIf): Likewise.
* interp/bootlex.lisp (boot): Set $nornamizeTree.
* algebra/Makefile.pamphlet (axiom_algebra_layer_9): Move from
layer 4 to here.
|
|
(NRTgetLocalIndexClear): Remove.
(NRTgetLocalIndex1): Lose second unused argument; move body to
NRTgetLocalIndex.
* interp/define.boot (doIt): Call NRTgetLocalIndex, not
NRTgetLocalIndexClear.
* interp/wi2.boot (NRTgetLocalIndex): Rename from NRTgetLocalIndex1.
|
|
was indeed abbreviated a category.
|
|
* hyper/parse-types.c (htperror): Fix thinko.
|
|
(setqMultiple): Likewise.
* interp/def.lisp (DEF-IS2): Likewise.
* interp/define.boot (compAdd): Likewise.
* interp/fnewmeta.lisp (|PARSE-Enclosure|): Likewise.
* interp/fortcall.boot (lmultiToUnivariate): Likewise.
(functionAndJacobian): Likewise.
(vectorOfFunctions): Likewise.
* interp/mark.boot (markMultipleExplicit): Likewise.
(markInsertBodyParts): Likewise.
* interp/nruncomp.boot (NRTaddDeltaCode): Likewise.
* interp/nrunopt.boot (NRTextendsCategory1): Likewise.
* interp/postpar.boot (postTransform): Likewise.
(postTran): Likewise.
(postPretend): Likewise.
(postConstruct): Likewise.
(postBlockItem): Likewise.
(postCategory): Likewise.
(postForm): Likewise.
(postTransScripts): Likewise.
(postJoin): Likewise.
(postMapping): Likewise.
(postCollect): Likewise.
(postInSeq): Likewise.
(postType): Likewise.
(post%Comma): Rename from postTuple.
(unComma): Rename from unTuple.
(comma2Tuple): Remove.
* interp/trace.boot (traceSpad2Cmd): Use %Comma, not Tuple.
* interp/wi1.boot (compSetq1): Likewise.
(setqMultiple):Likewise.
* boot/translator.boot (compileBootHandler): Give up if
translation to Lisp contained errors.
* testsuite/compiler/aw-420.spad: New.
|
|
(compDefineLisplib): Use it.
(finalizeLisplib): Likewise.
* algebra/Makefile.pamphlet (%.NRLIB/code.$(FASLEXT)): Invoke the
compiler directly.
(SPADPRSR.NRLIB/code.$(FASLEXT)): Likewise.
(PARSER.NRLIB/code.$(FASLEXT)): Likewise.
* interp/compiler.boot (compSetq1): Fix thinko.
* interp/define.boot (hasSigInTargetCategory): Give a clue to the
pretty printer.
* interp/sys-utility.boot ($ERASE): Remove declaration.
|
|
|
|
* 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/compiler.boot: Likewise.
* interp/define.boot: Likewise.
* interp/fortcall.boot: Likewise.
* interp/functor.boot: Likewise.
* interp/htsetvar.boot: Likewise.
* interp/newfort.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/nrunopt.boot: Likewise.
|
|
Update all boot files to use `namespace' instead of `)package'.
* interp/: Likewise.
|
|
* interp/functor.boot: Likewise.
* interp/g-opt.boot: Likewise.
* interp/nruncomp.boot: Likewise.
* interp/nrunfast.boot: Likewise.
* interp/package.boot: Likewise.
* interp/parse.boot: Likewise.
* interp/pspad1.boot: Likewise.
* interp/record.boot: Likewise.
* interp/template.boot: Likewise.
* interp/trace.boot: Likewise.
* interp/wi1.boot: Likewise.
* interp/wi2.boot: Likewise.
|
|
* 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.
|
|
* interp/br-util.boot: Likewise.
* interp/c-doc.boot: Likewise.
* interp/cattable.boot: Likewise.
* interp/clammed.boot: Likewise.
* interp/define.boot: Likewise.
* interp/g-cndata.boot: Likewise.
* interp/g-util.boot: Likewise.
* interp/ht-util.boot: Likewise.
* interp/i-map.boot: Likewise.
* interp/modemap.boot: Likewise.
* interp/nrungo.boot: Likewise.
* interp/rulesets.boot: Likewise.
* interp/slam.boot: Likewise.
* interp/i-spec1.boot: Likewise.
* interp/Makefile.pamphlet (br-util.$(FASLEXT)): Don't compile as
Old Boot.
(bc-solve.$(FASLEXT)): Likewise.
(ht-util.$(FASLEXT)): Likewise.
(rulesets.$(FASLEXT)): Likewise.
(i-object.$(FASLEXT)): Likewise.
(i-util.$(FASLEXT)): Likewise.
(nrunfast.$(FASLEXT)): Likewise.
(nrungo.$(FASLEXT)): Likewise.
(iterator.$(FASLEXT)): Likewise.
(cattable.$(FASLEXT)): Likewise.
(c-doc.$(FASLEXT)): Likewise.
(posit.$(FASLEXT)): Likewise.
(modemap.$(FASLEXT)): Likewise.
(slam.$(FASLEXT)): Likewise.
(clammed.$(FASLEXT)): Likewise.
(g-opt.$(FASLEXT)): Likewise.
(g-error.$(FASLEXT)): Likewise.
(pathname.$(FASLEXT)): Likewise.
(g-util.$(FASLEXT)): Likewise.
(g-cndata.$(FASLEXT)): Likewise.
* boot/tokens.boot: Remove renaming of NOT to NULL, when compiling
Old Boot.
|
|
(compDefineFunctor): Initialize it before compiling a functor.
|
|
* interp/define.boot: Add declarations.
* interp/types.boot (%Signature): New.
|
|
|
|
|
|
* interp/newaux.lisp: Increase the binding power of "+->".
|
|
* interp/define.boot (compDefineFunctor1): Use setShellEntry.
(canCacheLocalDomain): Likewise.
(compilerCases): Likewise.
(doIt): Likewise.
* interp/functor.boot (setVector0): Likewise.
(setVector3): Likewise.
(setVector4part4): Likewise.
(setVector5): Likewise.
(mkVectorWithDeferral): Likewise.
(DescendCodeAdd1): Likewise.
(DescendCode): Likewise.
(ConsantCreator): Likewise.
(SetFunctionSlots): Likewise.
(CheckVector): Likewise.
* interp/g-opt.boot (optCall): Use getShellEntry.
(optSpecialCall): Likewise.
* interp/i-util.boot (devaluate): Likewise.
* interp/nruncomp.boot (buildFunctor): Use setShellEntry.
(NRTsetVector4a): Likewise.
(NRTputInLocalReferences): Use getShellEntry.
(NRTputInHead): Likewise.
* interp/nrunopt.boot (augmentPredVector): Use setShellEntry.
* interp/nruntime.boot (getShellEntry): New.
(setShellEntry): Likewise.
* interp/package.boot (processPackage): Use getShellEntry.
(PackageDescendCode): Use setShellEntry.
* interp/sys-globals.boot ($QuickCode): Remove.
* interp/template.boot (NRTdescendCodeTran): Use setShellEntry.
* interp/types.boot (%Void): New.
(%Shell): New.
* interp/wi2.boot (compDefineFunctor1): Use setShellEntry.
|
|
|
|
* interp/spaderror.lisp (|$quitTag|): Define as constant.
(|$numericFailure|): Likewise.
* interp/spad.lisp: Import "postpar" and "debug".
($): Remove toplevel assignment.
(|traceComp|): Tidy.
(/FLAG): Remove.
(*PROMPT*): Remove.
(|New,ENTRY,1|): Don't declare it. Tidy.
(|New,ENTRY,2|): Fix typo.
* interp/sfsfun-l.lisp (rbesselj): Remove extraneous right
parenthesis.
(rbesseli): Likewise.
* interp/patches.lisp: Import "sockio" instead of "debug"
(|$useInternalHistoryTable|): Don't define here.
(user::start): Remove.
(/RF-1): Declare ECHO-META special.
(READSPADEXPR): Declare IN-STREAM special.
(|$ViewportProcessToWatch|): Declare.
(echo-meta): Don't set here.
* interp/packtran.boot (rePackageTran): Tidy.
* interp/nspadaux.lisp (|$underscoreChar|): Define.
(|$markChoices|): Likewise.
(|$convert2NewCompiler|): Likewise.
(|$AnalyzeOnly|): Likewise.
(|$categoryPart|): Likewise.
(|$insideCAPSULE|): Likewise.
(|$insideEXPORTS|): Likewise.
(|$originalSignature|): Likewise.
(|$insideDEF|): Likewise.
(|$insideTypeExpression|): Likewise.
(|$spadTightList|): Likewise.
(|$PerCentVariableList|): Likewise.
* interp/nrunopt.boot (augmentPredCode): Fix typo.
* interp/nlib.lisp (*LISP-BIN-FILETYPE*): Remove.
(recompile-lib-file-if-necessary): Use $faslType. Unconditionally
define.
* interp/lisplib.boot (compDefineLisplib): Tidy.
* interp/interop.boot (SExprToDName): Tidy.
(oldAxiomPreCategoryDevaluate): Likewise.
(hashNewLookupInCategories): Likewise.
* interp/g-util.boot (get): Adjust return type.
(get0): Likewise.
(get1): Likewise.
(get2): Likewise.
* interp/foam_l.lisp: Tidy.
* interp/define.boot (maybeInsertViewMorphisms): Fix typo.
* interp/debug.lisp (/breakcondition): Declare.
* interp/sys-utility.boot (getSystemModulePath): New.
* interp/daase.lisp (|with|): Remove
(|library|): Move i-syscmd.boot
(initial-getdatabase): Use getSystemModulePath.
(getdatabase): Likewise.
(addoperations): Don't reference package LISP.
(localdatabase): Likewise.
(write-interpdb): Don't declare *print-prett* special.
(write-browsedb): Likewise.
(write-categorydb): Likewise.
|
|
* interp/int-top.boot (intloopReadConsole): Remove code for
$DALYMODE.
* interp/define.boot ($NRTopt): Define.
($suffix): Likewise.
* interp/debug.lisp (S-SPADKEY): Define.
* interp/Makefile.pamphlet (OBJS): Don't include setq.$(FASLEXT).
(setq.$(FASLEXT)): Remove rule.
* interp/setq.lisp: Remove.
|
|
* interp/nruncomp.boot ($Slot1DataBase): Define here.
* interp/parse.boot ($oldParserExpandAbbrs): Likewise.
* interp/define.boot ($mutableDomains): Define here.
(compDefineFunctor1): Tidy.
(clearCmdCompletely): Don't set $functionTable.
|
|
* interp/c-util.boot (dollarIfRepHack): New.
(RepIfRepHack): Likewise.
(substituteDollarIfRepHack): Likewise.
(isSubset): Dollar is subset of Rep only in old semantics.
* interp/buildom.boot (mkMappingFunList): Substitute dollar for
Rep only when appropriate.
(mkRecordFunList): Likewise.
(mkNewUnionFunList): Likewise.
(mkUnionFunList): Likewise.
* interp/compiler.boot (compNoStacking): Likewise.
(compNoStacking1): Likewise.
(getConstructorFormOfMode): Likewise.
(isUnionMode): Likewise.
(coerce): Likewise.
(coerceSubset): Likewise.
* interp/modemap.boot (addModemap1): Likewise.
(isSuperDomain): Likewise.
* interp/define.boot (maybeInsertViewMorphisms): New.
(compCapsule): Use it.
(compCategoryItem): Don't allow exports of rep and per.
* interp/sys-globals.boot ($useRepresentationHack): New.
|
|
|
|
|
|
* nruncomp.boot ($NRTbase): Define as a constant.
* setq.lisp: Don't set it.
|
|
(compSymbol): Use condition type view for non Union objects.
(getUniqueCaseView): New. Subroutine of compSymbol.
(compForm2): Don't infer type for flag parameter through
unique compilcation.
(checkCallingConvention): New.
(compileQuasiquote): coerce, don't convert.
(compCase1): Handle non Union type object through modemap
selection.
(maybeSpliceMode): New. Subroutine of compCase1.
Register special form compiler with their names, not pointers.
* define.boot (candidateSignatures): New.
(hasSigInTargetCategory): Use it. Tidy.
(checkAndDeclare): Use isQuasiquote.
(spadCompileorSetq): Rename non atomic parameters before calling
LISP compiler.
* g-util.boot (quasiquote): New.
(isQuasiquote): Likewise.
* i-intern.boot (flagArguments): New.
(signatureFromModemap): Likewise.
(mkAtree3): Use them. Handle functions taking flag arguments.
* i-object.boot (getFlagArgsPos): New.
* i-spec1.boot (userDefinedCase): Now prepare form and hands back
to bottomUp.
(upcase): Adjust call to userDefinedCase.
* modemap.boot (addDomain): Don't add flag domains to the
environment.
* nruncomp.boot (NRTencode): Handle flag values.
(NRTgetLocalIndex1): Likewise.
* nrunfast.boot (lazyMatch): Likewise.
(newExpandLocalTypeForm): Likewise.
* sys-constants.boot ($DummyFunctorNames): Include quasiquote
constructor.
* template.boot (NRTaddInner): Handle flag values.
|
|
($createLocalLibDb): Likewise.
* clam.boot ($hashNode): Likewise.
* comp.lisp (|$compileDontDefineFunctions|): Likewise.
* compiler.boot ($compileOnlyCertainItems): Likewise.
* database.boot ($globalExposureGroupAlist): Likewise.
* define.boot ($newCompCompare): Likewise.
* format.boot ($permitWhere): Likewise.
* g-boot.boot ($inDefLET): Likewise.
($inDefIS): Likewise.
($letGenVarCounter): Likewise.
($isGenVarCounter): Likewise.
* g-error.boot ($ReadingFile): Likewise.
(handleLispBreakLoop): Remove special case on $cclSystem.
* g-timer.boot (computeElapsedTime): Likewise.
* g-util.boot ($interpOnly): Move from setq.lisp to here.
* i-funsel.boot ($domPvar): Likewise.
* i-object.boot ($immediateDataSymbol): Likewise.
* i-output.boot ($algebraOutputStream): Likewise.
(ERROROUTSTREAM): Likewise.
(ERRORINSTREAM): Likewise.
* i-spec2.boot ($InterpreterMacroAlist): Likewise.
* i-syscmd.boot ($NonNullStream): Likewise.
($NullStream): Likewise.
($localExposureDataDefault): Likewise.
($localExposureData): Likewise.
* lisplib.boot ($functionLocations): Likewise.
* msgdb.boot ($testingSystem): Likewise.
* nlib.lisp (get-directory-list): Tidy.
* nruncomp.boot ($devaluateList): Move from setq.lisp to here.
($functorLocalParameters): Likewise.
($insideCategoryPackageIfTrue): Likewise.
($profileCompiler): Likewise.
* nrunfast.boot ($doNotCompressHashTableIfTrue): Likewise.
* nrungo.boot ($insideCompileBodyIfTrue): Likewise.
* setvars.boot ($InitialCommandSynonymAlist): Likewise.
($CommandSynonymAlist): Likewise.
(setOutputLibrary): Simplify.
* spad.lisp (|$newCompCompare|): Don't set here.
(|$compileOnlyCertainItems|): Likewise.
* sys-constants.boot ($BasicPredicates): Include SYMBOLP.
($TriangleVariableList): Move from setq.lisp to here.
($Any): Likewise.
($Boolean): Likewise.
($SingleInteger): Likewise.
($QuotientField): Likewise.
($ComplexInteger): Likewise.
($OutputForm): Likewise.
($FunctionalExpression): Likewise.
($Expression): Likewise.
($AnonymousFunction): Likewise.
* sys-globals.boot (INPUT_-LIBRARIES): Likewise.
(OUTPUT_-LIBRARY): Likewise.
($newConlist): Likewise.
($compilingInputFile): Likewise.
($minivectorNames): Likewise.
|
|
(varini.$(FASLEXT)): Remove rule.
* compiler.boot (compileSpad2Cmd): Don't set $ncConverse; it is
unused. Don't set $newcomMode and $newComp.
(compTopLevel): There is no function newComp. So simplify.
* cattable.boot (updateCategoryTable): Remove test for $newcompMode.
* database.boot (updateDatabase): Likewise.
* int-top.boot (SpadInterpretStream): Don't set $newcompMode.
($ncmParse): Move from varini.boot.
($ncmMacro): Likewise.
* bookvol5.pamphlet: Remove reference to $newcompMode.
* define.boot (compDefineCapsuleFunction): Simplify.
* msg.boot: Move diagnostic related variables from varini.boot to here.
* posit.boot ($nopos): Move from varini.boot to here.
* setq.lisp ($newcompMode): Don't set here
($newComp): Likewise.
($LINELENGTH): Likewise.
* spad.lisp ($newComp): Likewise.
($LINELENGTH): Likewise.
* varinit.boot: Remove.
|
|
* ax.boot: Likewise.
* cattable.boot: Likewise.
* compiler.boot: Likewise.
* def.lisp: Likewise.
* define.boot: Likewise.
* functor.boot: Likewise.
* g-opt.boot: Likewise.
* i-analy.boot: Likewise.
* i-intern.boot: Likewise.
* i-map.boot: Likewise.
* i-object.boot: Likewise.
* i-output.boot: Likewise.
* i-spec2.boot: Likewise.
* info.boot: Likewise.
* mark.boot: Likewise.
* nrunopt.boot: Likewise.
* package.boot: Likewise.
* parse.boot: Likewise.
* pf2atree.boot: Likewise.
* pf2sex.boot: Likewise.
* postpar.boot: Likewise.
* pspad2.boot: Likewise.
* wi2.boot: Likewise.
|
|
2007-11-18 Gabriel Dos Reis <gdr@cs.tamu.edu>
* ast.boot.pamphlet (bfReduce): Compute left reduction, not right
reduction.
src/interp/
2007-11-18 Gabriel Dos Reis <gdr@cs.tamu.edu>
* Makefile.pamphlet (nrunopt.$(FASLEXT)): New rule.
(<<nrunopt.clisp>>): Remove.
* define.boot: Fix syntax.
* nruncomp.boot: Likewise.
* nrunopt.boot.pamphlet: Push into package "BOOT". Fix syntax.
* wi2.boot: Fix syntax.
|
|
(<<functor.clisp>>): Remove.
* functor.boot.pamphlet: Push into package "BOOT".
|