Age | Commit message (Collapse) | Author | Files | Lines |
|
(parseDollarGreaterEqual): Likewise.
(parseDollarLessEqual): Likewise.
(parseDolloarNotEqual): Likewise.
|
|
types.
|
|
instantiations representations in interactive environments.
* interp/i-eval.boot (evaluateFormAsType): New.
(evaluateType): Use it.
(evaluateType1): Tidy.
* interp/i-output.boot (output): Tidy.
* interp/i-object.boot ($genValue): Define here.
* interp/sys-dirver.boot ($verbose): Rename from
$verboseInterpreter.
* interp/i-map.boot (genMapCode): Propagate $verbose renaming.
* interp/slam.boot (compileRecurrenceRelation): Likewise.
|
|
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.
|
|
Tuple coercion behind the scene.
* interp/i-output.boot (output): Likewise.
|
|
(|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.
|
|
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.
|
|
* interp/sys-utility.boot (delete): Fix thinko.
* interp/sys-globals.boot ($sourceFiles): Define here.
(INPUTSTREAM): Likewise.
* interp/i-syscmd.boot (UNDERBAR): Move to sys-globals.boot.
* interp/fname.lisp: Import "macros".
* interp/debug.lisp: Import "parsing".
Replace $PRETTYPRINT with $PrettyPrint.
(/FN): Define.
(depthAlist): Likewise.
* interp/br-search.boot (docSearch1): Fix thinko.
* interp/Makefile.pamphlet (debug.$(FASLEXT)): Depend on
parsing.$(FASLEXT).
* interp/i-output.boot (starstarcond): Remove used function.
(transcomparg): Likewise.
(MATBORCH): Define here.
(*TALLPAR): Likewise.
* interp/vmlisp.lisp (|char|): Remove duplicate definition.
|
|
* boot/tokens.boot (shoeKeyWords): Add new keywords.
* boot/ast.boot (Ast): Include three new nodes.
(bfTry): New.
(bfThrow): Likewise.
* boot/parser.boot ($bodyHasReturn): Remove.
(bpNoteReturnStmt): Likewise.
(bpThrow): New.
(bpTry): Likewise.
(bpPiledCatchItems): Likewise.
(bpCatchItemList): Likewise.
(bpExceptionHead): Likewise.
(bpExceptionTail): Likewise.
(bpException): Likewise.
(bpCatchItem): Likewise.
(bpReturn): Include `throw' expressions.
(bpStatement): Include `try' expressions.
* interp/macros.lisp (|tryLine|): Rename from |try|.
* interp/pspad1.boot: Replace `try' with `tryLine' throughout.
|
|
|
|
script execution quiet. Support --verbose for verbose processing.
|
|
|
|
(sys-utility.$(FASLEXT)): New rule.
* interp/sys-utility.boot: New.
* interp/macros.lisp (|functionp|): Move to sys-utility.boot.
(|macrop|): Likewise.
(|delete|): Likewise.
(CONTAINED, contained\,eq, contained\,equal): Likewise.
(ASSOCLEFT): Likewise.
(ASSOCRIGHT): Likewise.
(ADDASSOC): Likewise.
(DELLASOS): Likewise.
(LASSOC): Likewise.
(|rassoc|): Likewise.
|
|
(|G-stdinVar|): Likewise.
(|G-stderrVar|): Likewise.
(|FormatNumber|): Bind local variable; don't just assign to it.
(|magicEq1|): Tidy.
* interp/debug.lisp: Don't declare `COUNT as SPECIAL.
Remove reference to LISP package. Remove CCL special-cased
definitions.
* interp/comp.lisp ($closedfns): Define.
* interp/cfuns.lisp (|getEnv|): Define only for GCL, for the time
being.
|
|
(bpOutItem): Use it.
* boot/ast.boot (needsPROG): New.
(shoeCompTran): Use it. Tidy.
(bfMain): Define cache variables before functions manipulating them.
* boot/strap/: Update cached Lisp translations.
* interp/g-timer.boot: Use assignment instead of SETANDFILEQ at
toplevel.
* interp/i-syscmd.boot: Likewise.
* interp/pf2atree.boot: Likewise.
* interp/trace.boot: 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.
|
|
|
|
(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.
|
|
|
|
($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.
|
|
($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.
|
|
* interp/nruncomp.boot ($Slot1DataBase): Define here.
* interp/parse.boot ($oldParserExpandAbbrs): Likewise.
* interp/define.boot ($mutableDomains): Define here.
(compDefineFunctor1): Tidy.
(clearCmdCompletely): Don't set $functionTable.
|
|
|
|
|
|
* boot/ast.boot (bfUntuple): New.
(bfTagged): Toplevel tags are signatures.
* boot/parser.boot (bpTyping): New.
(bpTagged): Use it.
* boot/translator.boot (genDeclaration): New.
(bpOutItem): Use it.
* interp/compiler.boot: Add type annotations for compiler routines.
* lisp/Makefile.in ($(OUT)/lisp$(EXEEXT)): Don't turn on emit-fn.
|
|
* 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.
|
|
* interp/i-map.boot: Likewise. Allocate fresh cell for $env.
* interp/i-spec1.boot: Likewise.
* interp/i-syscmd.boot: Likewise.
* interp/i-toplev.boot: Likewise.
* interp/lisplib.boot: Likewise.
* interp/setvars.boot: Likewise.
* interp/sys-globals.boot: Likewise.
* interp/nruncomp.boot: Encode flag types too.
* interp/template.boot: Likewise.
* share/algebra: Update databases.
|
|
* interp/i-syscmd.boot (displayOperationsFromLisplib): Say no
exported operations when there is nothing to display.
|
|
* interp/i-spec1.boot (compileADEFBody): Don't evaluate unnamed
functions. Compile them instead.
* testsuite/interpreter/aw-272.input: New.
|
|
|
|
|
|
* interp/iterator.boot (getIdentity): Properly identity the
algebra empty list.
|
|
Fix AW/370
* interp/compiler.boot (compWithMappingMode): Consult current
environment to decide which variabes are free.
* testsuite/compiler/cwmm-test.spad: New.
|
|
|
|
value for empty environments.
* interp/database.boot (rebuildCDT): Likewise.
* interp/i-map.boot (addDefMap): Likewise.
(rewriteMap0): Likewise.
(rewriteMap1): Likewise.
(compileDeclaredMap): Likewise.
(analyzeUndeclaredMap): Likewise.
* interp/i-spec1.boot: Likewise.
* interp/i-syscmd.boot (reportOperations): Likewise.
* interp/i-toplev.boot (interpret): Likewise.
* interp/lisplib.boot (loadLib): Likewise.
(loadLibNoUpdate): Likewise.
* interp/setvars.boot (resetWorkspaceVariables): Likewise.
* interp/spad.lisp ($e): Move definition to sys-globals.boot.
($env): Likewise.
* interp/sys-globals.boot ($e): Define here.
($env): Likewise.
* algebra/any.spad.pamphlet (ObjectProperty): New.
(Binding): Likewise.
(Contour): Likewise.
(Scope): Likewise.
(Environment): Likewise.
* algebra/exposed.lsp.pamphlet: Expose ObjectProperty, Binding,
Contour, Scope, and Environment.
* algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include
OBJPROP.o.
(axiom_algebra_layer_1): Include BINDING.o
(axiom_algebra_layer_2): Include CONTOUR.o
(axiom_algebra_layer_3): Include SCOPE.o
(axiom_algebra_layer_4): Include ENV.o
* share/algebra: Update database.
|
|
* interp/i-spec1.boot (upand): Don't insist on having operands of
type Boolean.
(upor): Likewise.
* algebra/mkrecord.spad.pamphlet (Pair): New domain constructor.
* algebra/exposed.lsp.pamphlet: Expose Pair, PropositionalLogic,
PropositionalFormula.
* algebra/boolean.spad.pamphlet (PropositionalFormula): New domain
constructor.
* algebra/Makefile.pamphlet (axiom_algebra_layer_4): Include
PAIR.o.
(axiom_algebra_layer_19): Include PROPFRML.o
* share/algebra: Update databases.
* testsuite/interpreter/1849734.input: New.
|
|
* interp/buildom.boot ($commonCategoryAncestors): New.
($commonCategoryDefaults): Likewise.
(Record0): Use it.
(Union): Likewise.
(Mapping): Likewise.
(Enumeration): Likewise.
* testsuite/algebra/1848975.input: New.
|
|
* interp/compiler.boot (compPretend): Don't check for `new'
compiler semantics.
(compColonInside): Likewise.
* testsuite/compiler/1872564.spad: New.
|
|
* interp/compiler.boot (coerceExtraHard): Always coerce by
autoCoerce.
* testsuite/interpreter/case.spad: Likewise.
* testsuite/interpreter/case.input: New.
|
|
case views here.
(hasUniqueCaseView): Rename from getUniqueCaseView. Take the
target mode as second argument.
(compForm2): Use calling convention vector to determine infer flag
parameter types.
(compCase1): Uniformly handle `case-expressions'. Call
genDeltaEntry for selected operator.
(coerceExtraHard): Handle coercions from UnionType domains.
(autoCoerceByModemap): Tidy.
* interp/g-opt.boot (optCall): Be more verbose in diagnostics.
* algebra/syntax.spad (Syntax): Rework.
* algebra/coerce.spad.pamphlet (UnionType): New.
* algebra/Makefile.pamphlet (axiom_algebra_layer_0):
Include UTYPE.o
* share/algebra: Update databases.
|
|
* algebra/domain.spad (reify$Domain): Specify target type of
conversion.
* interp/nrunfast.boot (newLookupInDomain): Tidy.
(newLookupInCategories): Likewise.
* testsuite/interpreter/1852076.input: New.
|
|
* interp/postpar.boot (postError): Fix thinko.
* interp/parse.boot ($defOp): Define.
* testsuite/compiler/1867459.spad: New.
|
|
|
|
|
|
bindings.
* interp/msgdb.boot (brightPrint0): Don't highlight if the
standard output is not attached to a terminal.
* interp/sys-driver.boot (stdStreamIsTerminal): New.
* lib/cfuns-c.c (std_stream_is_terminal): New.
|
|
|
|
|
|
domain of computation is the add form.
|
|
|
|
($lookupDefaults): Define.
(newLookupInDomain): Look up in the add-chain first.
(newLookupInCategories): Likewise.
(lazyMatch): Quasiquote is now like a Mapping.
(newExpandLocalTypeForm): Quasiquote is no longer like QUOTE.
* nrungo.boot (lookupInDomainAndDefaults): New.
(compiledLookup): Use it.
|