aboutsummaryrefslogtreecommitdiff
path: root/src/interp/i-coerce.boot
AgeCommit message (Collapse)AuthorFilesLines
2009-01-032009-01-03 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis1-25/+8
* 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.
2009-01-03 * interp/buildom.boot (UnionEqual): Don't call orderUnionEntries.dos-reis1-6/+4
(coerceUn2E): Likewise. (mkUnionFunList): Likewise. * interp/i-coerce.boot (coerceUnion2Branch): Likewise. (coerceBranch2Union): Likewise. ($newCompilerUnionFlag): Remove. (orderUnionEntries): Likewise. (mkPredList): Remove dead code.
2008-10-17 Fix AW/271dos-reis1-4/+6
* interp/sys-constants.boot ($Field): New. * interp/i-coerce.boot (retract2Specialization): Ignore expressions whose types do no belong to Field.
2008-10-13 Don't step over Common Lisp MAP.dos-reis1-1/+1
* interp/i-analy.boot (bottomUp): Change MAP to %Map. (isEltable): Likewise. * interp/i-coerce.boot (retract): Likewise. * interp/i-eval.boot (getArgValue): Likewise. * interp/i-funsel.boot (selectLocalMms): Likewise. * interp/i-intern.boot (getValueFromEnvironment): Likewise. * interp/i-map.boot (mkAuxiliaryName): Likewise. (augmentMap): Likewise. (displayMap): Likewise. (putBodyInEnd): Likewise. (expandRecursiveBody): Likewise. * interp/i-output.boot (outputTran): Likewise. * interp/i-spec1.boot (declare): Likewise. * interp/i-syscmd.boot (displayMacro): Likewise. * interp/i-toplev.boot (interpret2): Likewise. * interp/patches.lisp (MAP): Remove. * interp/trace.boot (isUncompiledMap): Likewise.
2008-05-24 * interp/i-coerce.boot (retract2Specialization): Leave if objectdos-reis1-0/+1
is an Expression, but not a fraction.
2008-05-18 * interp/i-object.boot (wrapped2Quote): Reomve.dos-reis1-1/+1
(getValueNormalForm): New. * interp/i-code.boot (intCodeGenCOERCE): Use it. * interp/i-coerce.boot (coerceIntByMap): Likewise. * interp/i-eval.boot (getArgValue): Likewise. (getArgValue2): Likewise. * interp/i-funsel.boot (selectMms): Likewise. * interp/i-map.boot (rewriteMap): Likewise. * interp/i-spec2.boot (IFcodeTran): Likewise. (evalLET): Likewise. (upreturn): Likewise. * interp/g-cndata.boot (isConstructorName): New. * testsuite/interpreter/eval-dep-type.input: New.
2008-05-09 * interp/c-util.boot: Remove Old Boot semantics.dos-reis1-7/+7
* interp/database.boot: Likewise. * interp/format.boot: Likewise. * interp/g-timer.boot: Likewise. * interp/i-analy.boot: Likewise. * interp/i-coerce.boot: Likewise. * interp/i-coerfn.boot: Likewise. * interp/i-eval.boot: Likewise. * interp/i-intern.boot: Likewise. * interp/i-output.boot: Likewise. * interp/i-resolv.boot: Likewise. * interp/i-spec1.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/msgdb.boot: Likewise. * interp/newfort.boot: Likewise. * boot/includer.boot (diagnosticLocation): New. * boot/ast.boot (bfReName): Use it.
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-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-6/+6
2008-04-08 * interp/spad.lisp (|evalSharpOne|): Remove.dos-reis1-1/+6
* interp/i-coerce.boot: New. (coerceUnion2Branch): Use it instead of evalSharpOne.
2008-02-22 * interp/i-analy.boot (bottomUpFormTuple): Use "tuple" fordos-reis1-1/+1
parse form that are not type instantiations. * interp/i-coerce.boot (coerceInt1): Likewise. * interp/i-intern.boot (mkAtree3): Likewise. (collectDefTypesAndPreds): Likewise. * interp/i-map.boot (args2Tuple): Likewise. (makePattern): Likewise. (canMakeTuple): Likewise. (makeRuleForm): Likewise. (numArgs): Likewise. (combineMapParts): Likewise. (mkMapPred): Likewise. (findLocalVars1): Likewise. * interp/i-output.boot (outputTran): Likewise. * interp/i-spec1.boot ($specialOps): Likewise. (evalUntargetedADEF): Likewise. (upDeclare): Likewise. (declare): Likewise. * interp/i-spec2.boot (upDollarTuple): Likewise. (upLET): Likewise. (isTupleForm): Remove. (uptuple): Rename from upTuple. (upLETWithFormOnLhs): Use "tuple" for parse forms that are not type instantiations. * interp/i-syscmd.boot (displayMacro): Likewise. * interp/pf2atree.boot (pf2Atree1): Likewise. * interp/pf2sex.boot (pf2Sex1): Likewise. (pfApplication2Sex): Likewise. (pfCollectArgTran): Likewise. * interp/ptrees.boot (pfTuple): Likewise. (pfTuple?): Likewise.
2008-02-21 * interp/i-coerce.boot (coerceInt1): Avoid misguideddos-reis1-3/+0
Tuple coercion behind the scene. * interp/i-output.boot (output): Likewise.
2008-02-20 * lisp/core.lisp.in [SBCL]: Require "sb-posix".dos-reis1-1/+4
(|resetErrorCount|): New export function. * interp/vmlisp.lisp (opOf): Remove macro definition. * interp/msg.boot (setMsgCatlessAttr): Fix thinko. * interp/monitor.lisp (monitor-add): Remove extra right parenthesis. * interp/lisplib.boot: Import "debug". (initializeLisplib): Don't use ERRORS variable. * interp/i-spec1.boot (isDomainValuedVariable): Tidy. * interp/i-output.boot (outputTran): Use SIZE instead of #. (output): Remove misguided conversion from Tuple to List. * interp/i-coerce.boot (coerceInteractive): Allow domain object convesions. * interp/g-util.boot (opOf): Declare. * interp/Makefile.pamphlet (lisplib.$(FASLEXT)): Depend on debug.$(FASLEXT). * algebra/Makefile.pamphlet: Use .$(FASLEXT) instead of hardcoded .o extension.
2008-02-19 * algebra/variable.spad.pamphlet (AnonymousFunction): Add newdos-reis1-6/+6
functions `parameters' and `body'. * algebra/domain.spad.pamphlet: Rename from algebra/domain.spad. (Category): New category. * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include CATEGORY.o. (DOMAIN.NRLIB/code.$(FASLEXT)): Remove rule. * interp/trace.boot (transTraceItem): Use $LangSupportTypes. * interp/sys-constants.boot ($None): New. ($Type): Likewise. ($LangSupportTypes): Likewise. * interp/parse.boot (parseHas): Use $LangSupportTypes. (parseHasRhs): Likewise. * interp/i-spec2.boot (upLETtype): Use conceptualType. (uptypeOf): Likewise. (upwhere): Likewise. (typeOfType): Remove. * interp/i-spec1.boot (isDomainValuedVariable): Variables with type Category and Type are domain valued too. * interp/i-output.boot (output): Special case only Mode and Type. * interp/i-funsel.boot (selectMms): Don't ignore modemaps with category parameters. * interp/i-coerce.boot (canCoerce1): Test for Category instead of SubDomain Domain. (canCoerceFrom0): Use $None and $Any. (absolutelyCannotCoerce): Use $None. (coerceInteractive): Use $LangSupportTypes. (coerceInt1): Use $Any. * interp/i-analy.boot (conceptualType): New. (bottomUpType): Use it. * interp/clammed.boot (isValidType): Use $LangSupportTypes. * interp/g-cndata.boot (isNameOfType): Likewise. * interp/category.boot (Category): Remove hacky definition. * interp/buildom.boot ($noCategoryDomains): Domain now has a Lisplib.
2008-02-02 * interp/spad.lisp (APLMODE): Don't define.dos-reis1-0/+1
(XTOKENREADER): Don't set; define. * interp/setvars.boot (resetWorkspaceVariables): Don't reset $coerceIntByMapCounter. * interp/setq.lisp: Stop redundant assignments. * interp/nrunfast.boot ($NRTmonitorIfTrue): Define here. * interp/i-object.boot (objEnv): Use $EmptyEnvironment. * interp/i-coerce.boot ($useConvertForCoercions): Likewise. * interp/format.boot ($abbreviateJoin): Define here.
2008-02-02 * interp/sys-globals.boot ($consistencyCheck): Remove.dos-reis1-0/+4
($insideCanCoerceFrom): Define. * interp/setq.lisp: Remove more unused variables. * interp/patches.lisp (/RF-1): Tidy. * interp/server.boot (parseAndInterpret): Likewise. * interp/packtran.boot ($useNewParser): Remove. * interp/ht-util.boot (parseAndEval): Tidy. * interp/clam.boot ($failed): Define. * interp/g-timer.boot ($printStorageIfTrue): Likewise. * interp/hashcode.boot ($DomainsWithoutLisplibs): Likewise. * interp/i-coerce.boot ($useCoerceOrCroak): Likewise. * interp/i-analy.boot ($univariateDomains): Likewise. ($multivariateDomains): Likewise. * interp/i-object.boot ($useIntegerSubdomain): Likewise. * interp/i-syscmd.boot ($existingFiles): Likewise. * interp/newfort.boot ($fortranArrayStartingIndex): Likewise. * interp/setvars.boot (resetWorkspaceVariables): Don't reset $dependeeClosureAlist.
2007-11-07remove more pamphletsdos-reis1-0/+1377