aboutsummaryrefslogtreecommitdiff
path: root/src/interp/nruncomp.boot
AgeCommit message (Collapse)AuthorFilesLines
2010-05-03 Generate more readable code for functor definitions.dos-reis1-13/+37
* interp/nruncomp.boot (washFunctorBody): New. (buildFunctor): Use it. * interp/g-opt.boot (optBind): New. (optLIST): Likewise.
2010-03-10 * interp/nruncomp.boot (genDeltaEntry): Take a second, environmentdos-reis1-2/+2
argument. Pass to compOrCroak. * interp/compiler.boot (compElt): Adjust call to genDeltaEntry. (compCase1): Likewise. (coerceByModemap): Likewise. (autoCoerceByModemap): Likewise. (compCat): Likewise. (compViableModemap): Take an additional environment argument. Pass it to genDeltaEntry. (compApplyModemap): Adjust call to compViableModemap. (compResolveCall): Likewise.
2010-03-09 * interp/nruncomp.boot (needToQuoteFlags?): New.dos-reis1-2/+11
(optDeltaEntry): Use it.
2010-03-05 * interp/nruncomp.boot (optDeltaEntry): Silently fail for domainsdos-reis1-1/+3
that are not instantiations.
2010-03-04 * interp/g-opt.boot (nominateForInlining): New.dos-reis1-1/+1
(optimizableDomain?): Likewise. (optCallSpecially): Use it * interp/compiler.boot (processInlineRequest): Likewise. * interp/nruncomp.boot (optDeltaEntry): Likewise. * interp/wi2.boot (optDeltaEntry): Likewise.
2010-03-04 * interp/c-util.boot (quoteMinimally): New.dos-reis1-1/+1
(registerFunctionReplacement): Likewise. * interp/define.boot (spadCompileOrSetq): Use it. * interp/g-opt.boot (optSpecialCall): Likewise. * interp/nruncomp.boot (optDeltaEntry): Likewise. * interp/spad.lisp (|knownEqualPred|): Likewise. * interp/wi2.boot (optDeltaEntry): Likewise.
2010-02-23 * interp/nruncomp.boot (genDeltaEntry): Don't store extraneousdos-reis1-8/+4
item on $NRTdeltaList. (NRTgetLocalIndex): Likewise. Tidy.
2010-02-23 Expand support for domain inlining to non-niladic functors.dos-reis1-14/+8
* interp/compiler.boot (processInlineRequest): Now accept any functor. * interp/c-util.boot (lookupFunctionInstance): New. (isFormal): Likewise. (expandFormTemplate): Likewise. (equalFormTemplate): Likewise. (getFunctionTemplate): Likewise. (lookupInheritedDefiningFunction): Likewise. (lookupDefiningFunction): Likewise. * interp/nruncomp.boot (optDeltaEntry): Tidy. Use lookupDefiningFunction.
2010-02-14 Fix SF/2910351dos-reis1-9/+9
* interp/nruncomp.boot (deltaTran): Avoid use of user-visible names for compiler internal tags. (genDeltaEntry): Likewise. (NRTassocIndex): Likewise. (NRTgetLocalIndex): Likewise. (NRTsubstDelta): Likewise. * interp/wi2.boot (genDeltaEntry): Likewise.
2009-11-01Clean updos-reis1-8/+4
2009-10-31 * interp/br-op2.boot (pairlis): Remove.dos-reis1-1/+1
(modemap2Sig): Use pairList. * interp/compiler.boot (applyMapping): Likewise. * interp/database.boot (augLisplibModemapsFromCategory): Likewise. (getOplistForConstructorForm): Likewise. * interp/define.boot (compDefineCategory2): Likewise. (compDefineFunctor1): Likewise. (mkOpVec): Likewise. * interp/lisplib.boot (finalizeLisplib): Likewise. * interp/nruncomp.boot (mkSlot1sublis): Likewise. * interp/wi1.boot (compDefineCategory2): Likewise. * interp/wi2.boot (compDefineFunctor1): Likewise.
2009-10-27 * interp/nruncomp.boot (buildFunctor): Remove $MissingFunctionInfo.dos-reis1-3/+0
* interp/functor.boot (SetFunctionSlots): Simplify. (SigSlotsMatch): Likewise. (CheckVector): Remove. (makeMissingFunctionEntry): Refer to $SetFunctions.
2009-10-25 * lib/cfuns-c.c (oa_spawn): New.dos-reis1-6/+5
(oa_allocate_process_argv): Likewise.
2009-09-26More cleanupdos-reis1-6/+6
2009-09-26More cleanupdos-reis1-1/+1
2009-09-25 * boot/ast.boot (bfMember): Improve a bit.dos-reis1-5/+5
* boot/tokens.boot: Don't rename 'is' and 'inst'. * boot/parser.boot: Use 'in' instead of 'MEMQ' where approrpriate. * interp/: Likewise.
2009-09-20 * boot/tokens.boot: "has" is not a keyword.dos-reis1-1/+1
* boot/ast.boot (bfHas): New. (bfReduce): Use "has" instead "has". (bfReduceCollect): Likewise. (bfReName): Likewise. (bfElt): Likewise. (bfSetelt): Likewise. * boot/parser.boot (bpSexpKey): Likewise. (bpPrefixOperator): Likewise. (bpInfixOperator): Likewise. (bpThetaName): Likewise. (bpIs): Parse "has" expressions. * boot/pile.boot (shoePileCoagulate): Likewise. * interp/: Fix unquoted use of "has". * interp/interop.boot (has): Remove.
2009-08-16 * interp/i-map.boot (addMap): Fix typo from last commit.dos-reis1-1/+1
* interp/compiler.boot (compElt): Fix thinko, one more time. * interp/nruncomp.boot (optDeltaEntry): Don't overquote VM forms for constants. * algebra/algext.spad.pamphlet: Call niladic functions with empty argument lists. * algebra/ddfact.spad.pamphlet: Likewise. * algebra/gpgcd.spad.pamphlet: Likewise. * algebra/modmon.spad.pamphlet: Likewise. * algebra/pf.spad.pamphlet: Likewise. * algebra/polycat.spad.pamphlet: Likewise. * algebra/twofact.spad.pamphlet: Likewise. * algebra/list.spad.pamphlet: "nil" is now a ocnstant. * algebra/string.spad.pamphlet: "space", "quote", "escape" are now constants.
2009-08-14 * boot/tokens.boot: Retire "^=". Introduce "~=".dos-reis1-3/+3
* boot/ast.boot: Use "~=" instead of "^=". * boot/includer.boot: Likewise. * boot/translator.boot: Likewise. * interp/as.boot: Likewise. * interp/bc-misc.boot: Likewise. * interp/bc-solve.boot: Likewise. * interp/bc-util.boot: Likewise. * interp/br-con.boot: Likewise. * interp/br-data.boot: Likewise. * interp/br-op1.boot: Likewise. * interp/br-op2.boot: Likewise. * interp/br-prof.boot: Likewise. * interp/br-saturn.boot: Likewise. * interp/br-search.boot: Likewise. * interp/br-util.boot: Likewise. * interp/c-doc.boot: Likewise. * interp/c-util.boot: Likewise. * interp/category.boot: Likewise. * interp/cattable.boot: Likewise. * interp/clam.boot: Likewise. * interp/clammed.boot: Likewise. * interp/compiler.boot: Likewise. * interp/database.boot: Likewise. * interp/define.boot: Likewise. * interp/format.boot: Likewise. * interp/fortcall.boot: Likewise. * interp/functor.boot: Likewise. * interp/g-cndata.boot: Likewise. * interp/g-opt.boot: Likewise. * interp/g-timer.boot: Likewise. * interp/g-util.boot: Likewise. * interp/guess.boot: Likewise. * interp/ht-root.boot: Likewise. * interp/ht-util.boot: Likewise. * interp/htsetvar.boot: Likewise. * interp/i-analy.boot: Likewise. * interp/i-code.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-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-toplev.boot: Likewise. * interp/i-util.boot: Likewise. * interp/int-top.boot: Likewise. * interp/interop.boot: Likewise. * interp/intfile.boot: Likewise. * interp/lisplib.boot: Likewise. * interp/macex.boot: Likewise. * interp/mark.boot: Likewise. * interp/match.boot: Likewise. * interp/modemap.boot: Likewise. * interp/msg.boot: Likewise. * interp/msgdb.boot: Likewise. * interp/newfort.boot: Likewise. * interp/nruncomp.boot: Likewise. * interp/nrunfast.boot: Likewise. * interp/nrungo.boot: Likewise. * interp/nrunopt.boot: Likewise. * interp/parse.boot: Likewise. * interp/pathname.boot: Likewise. * interp/pf2atree.boot: Likewise. * interp/pf2sex.boot: Likewise. * interp/postpar.boot: Likewise. * interp/profile.boot: Likewise. * interp/pspad1.boot: Likewise. * interp/pspad2.boot: Likewise. * interp/record.boot: Likewise. * interp/scan.boot: Likewise. * interp/setvars.boot: Likewise. * interp/simpbool.boot: Likewise. * interp/slam.boot: Likewise. * interp/topics.boot: Likewise. * interp/trace.boot: Likewise. * interp/wi1.boot: Likewise. * interp/wi2.boot: Likewise. * interp/word.boot: Likewise.
2009-03-01 Optimization should not change slot numbers.dos-reis1-3/+4
2009-01-12 * interp/category.boot: Miscellaneous cleanup.dos-reis1-4/+2
* interp/compiler.boot: Likewise. * interp/define.boot: Likewise. * interp/functor.boot: Likewise. * interp/info.boot: Likewise. * interp/nruncomp.boot: Likewise. * interp/wi1.boot: Likewise. * interp/wi2.boot: Likewise.
2009-01-032009-01-03 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis1-1/+1
* 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-14 r12459@gauss: gdr | 2008-12-12 18:18:31 -0600dos-reis1-5/+0
Tidy compApplyModemap. r12460@gauss: gdr | 2008-12-13 09:24:50 -0600 Tidy compMapCond. r12461@gauss: gdr | 2008-12-13 10:24:14 -0600 Activate compViableModemap. r12462@gauss: gdr | 2008-12-13 11:18:17 -0600 Remove pmatch and pmatchWithSl out of main compiler. r12463@gauss: gdr | 2008-12-13 12:26:44 -0600 Tidy compApplyModemap. r12464@gauss: gdr | 2008-12-13 16:39:28 -0600 Add compExclusiveOr. r12465@gauss: gdr | 2008-12-13 16:54:58 -0600 . r12466@gauss: gdr | 2008-12-14 15:01:33 -0600 Tidy compLogicalNot.
2008-11-30 * interp/nruncomp.boot (deltaTran): Don't check for $NRTaddFormdos-reis1-3/+1
againg; it was already checked by NRTassocIndex. (genDeltaEntry): Likewise. (NRTgetLocalIndex): Likewise. * interp/wi2.boot (genDeltaExntry): Likewise.
2008-11-29 * interp/nruncomp.boot (genDeltaSpecialSig): Remove, as unused.dos-reis1-4/+0
2008-11-29 * interp/nruncomp.boot (deltaTran): Don't encode signature again.dos-reis1-5/+3
(genDeltaEntry): Remove dead pattern match.
2008-11-29Misc cleanupdos-reis1-25/+24
2008-11-29 * interp/nruncomp.boot (buildFunctor): Remov reference to $NRTvec.dos-reis1-16/+11
* interp/nrunfast.boot ($NRTvec): Don't define.
2008-11-27 * interp/nruncomp.boot (NRTgetAddForm): Remove, as unused.dos-reis1-5/+0
2008-11-27 * interp/nruncomp.boot (NRTassocIndex): Don't set $found.dos-reis1-3/+3
2008-11-27Fix spelling.dos-reis1-3/+3
2008-11-16 * interp/define.boot: More cleanup.dos-reis1-0/+1
* interp/iterator.boot: Likewise.
2008-11-15 * interp/Makefile.pamphlet (OBJS): Remove cfuns. Includedos-reis1-1/+1
hashcode. * interp/cfuns.lisp: Delete.
2008-11-15 * interp/compiler.boot: Import "msgdb", not "c-util". Movedos-reis1-0/+1
compiler driver to i-syscmd.boot. * interp/define.boot: Import "nruncomp", "functor", "package". * interp/wi2.boot (NRTgetLocalIndex): Remove duplicate.
2008-11-15 * interp/spad.lisp (incTimeSum): Remove.dos-reis1-0/+3
* interp/modemap.boot ($forceAdd): Define. * interp/nruncomp.boot ($NRTderivedTargetIfTrue): Likewise. ($killOptimizeIfTrue): Likewise. * interp/i-toplev.boot (processInteractive): Tidy. * interp/c-util.boot ($compErrorMessageStack): Define. * interp/compiler.boot (compApply): Remove. ($compTimeSum): Likewise ($resolveTimeSum): Likewise. (compCompilerPredicate): Tidy. (comp3): There is no such thing as KAPPA.
2008-11-03 * interp/Makefile.pamphlet (template.$(FASLEXT)): Remove.dos-reis1-11/+83
* interp/template.boot: Move non-dead code where appropriate. Remove file. * boot/ast.boot (bfQ): Improve.
2008-10-07 * interp/nruncomp.boot: Remove unused variable $maximalViews.dos-reis1-3/+0
* interp/package.boot: Likewise.
2008-08-09 * interp/buildom.boot: Rename AST code LET to %LET throughout.dos-reis1-12/+12
* 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-07-11 * interp/nruncomp.boot (NRTencode): Don't encode enumerations.dos-reis1-4/+8
(listofBoundVars): Enumerations don't bind any varaible.
2008-07-09 * interp/template.boot (evalSlotDomain): Likewise.dos-reis1-3/+3
(NRTaddInner): Likewise. * interp/nrunfast.boot (lazyMatch): Handle Enumeration. (newExpandLocalTypeForm): Likewise. * interp/lisplib.boot (isFunctor): Enumeration is a functor too. * interp/nruncomp.boot (NRTencode): Encode Enumeration too.
2008-07-05 * interp/nruncomp.boot (NRTassocIndex): Document.dos-reis1-6/+12
(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.
2008-07-04 * interp/compiler.boot (compFormMatch): Tidy.dos-reis1-3/+3
(getFormModemaps): Likewise. (compComma): New. * interp/c-util.boot (isTupleInstance): New. (isHomoegenousVarargSignature): Likewise. (enoughArguments): Likewise. (wantArgumentsAsTuple): Likewise. * interp/apply.boot (reshapeArgumentList): New. (compFormWithModemap): Use it.
2008-05-17 * interp/compiler.boot (compSetq1): Use %Comma, not Tuple.dos-reis1-1/+1
(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.
2008-05-11fix fallout from previous commitdos-reis1-6/+6
2008-05-09 * interp/as.boot: Remove Old Boot semantics.dos-reis1-1/+1
* 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.
2008-05-08 * boot/translator.boot (bpOutItem): Handle namespace declaration.dos-reis1-1/+1
Update all boot files to use `namespace' instead of `)package'. * interp/: Likewise.
2008-05-06 * interp/define.boot: Explicitly initialize fluid variables.dos-reis1-13/+13
* 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.
2008-04-23 * boot/ast.boot: Tidy.dos-reis1-2/+2
* 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.
2008-04-14Various cleanups.dos-reis1-14/+14
2008-04-07 * interp/compiler.boot (compWithMappingMode): Use getShellEntry.dos-reis1-4/+4
* 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.