2009-01-12 Gabriel Dos Reis * interp/category.boot: Miscellaneous cleanup. * 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-10 Gabriel Dos Reis * interp/compiler.boot (getSuccessEnvironment): Don't specialize on `has'. (getInverseEnvironment): Likewise. * algebra/equation2.spad.pamphlet (factorAndSplit$Equation): Fix misuses of `has'. * interp/functor.boot (mkTypeForm): Rename from mkDomainConstructor. 2009-01-10 Gabriel Dos Reis Fix SF/2491986 * interp/i-syscmd.boot (displayValue): Fix thinko. * testsuite/interpreter/sf-2491986.input (a): New. 2009-01-10 Gabriel Dos Reis * interp/parse.boot ($parsingType): New. (parseType): New. Parse types forms. (parseTypeList): New. Parse list of type forms. 2009-01-09 Gabriel Dos Reis * interp/compiler.boot (compPredicate): Rename from compBoolean. Lose second argument. Document. 2009-01-09 Gabriel Dos Reis * algebra/data.spad.pamphlet (Byte): Satisfy OrderedFinite. (SystemInteger, SystemNonNegativeInteger, Int8, Int16, Int32, UInt8, UInt 16, UInt32): New. * algebra/Makefile.pamphlet (axiom_algebra_layer_7): Include INT8, INT16, INT32, UINT8, UINT16, UINT32. 2009-01-07 Gabriel Dos Reis * interp/sys-utility.boot (readByteFromFile): Tidy. (makeByteBuffer): Set fill pointer. (connectToHostAndPort): Define here. (readByteFromStreamSocket): Likewise. (writeByteToStreamSocket): Likewise. * interp/sys-os.boot (doConnectToHostAndPort): Rename from connectot$NetworkClientSocket. (doReadByteFromStreamSocket): Rename from readByteFromStreamSocket. (doWriteByteToStreamSocket): Rename from writeByteToStreamSocket. * algebra/net.spad.pamphlet: Use Maybe Byte. * algebra/data.spad.pamphlet (ByteBuffer): Fix fill pointer thinko. 2009-01-06 Gabriel Dos Reis * algebra/net.spad.pamphlet (resolve$Hostname): Return a Maybe %. (connectot$NetworkClientSocket): Likewise. (connectot$InetClientStreamSocket): Likewise. 2009-01-06 Gabriel Dos Reis * algebra/any.spad.pamphlet (Maybe): Rework. 2009-01-06 Gabriel Dos Reis * interp/sys-utility.boot (getVMType): IndexList are lists. * interp/g-util.boot (isSubDomain): Tidy. * interp/g-opt.boot (isVMConstantForm): New. (findVMFreeVars): Likewise. * interp/define.boot (insertViewMorphisms): Remove. (emitSubdomainInfo): New. (checkVariableName): Likewise. (checkParameterNames): Likewise. (checkRepresentation): Set $subdomain where appropriate. (compDefines): Check parameter names. (compDefineFunctor1): Propagate subdomain info. (doIt): Don't call insertViewMorphisms. * interp/compiler.boot (setqSingle): Check variable name. (compIterator): Likewise. (commonSuperType): New. (satisfies): Likewise. (coerceSubset): Use them to implemen cross-subdomain coercion. (coerceSuperset): New. (comCoerce1): Use it. (compPer): New. (compRep): Likewise. * interp/c-util.boot (getRepresentation): New. (proclaimCapsuleFunction): Improve for specialized subdomains. * algebra/stream.spad.pamphlet: Don't use `per' as variable name. * algebra/si.spad.pamphlet (size$SingleInteger): Tidy. (coerce$SingleInteger): Likewise. * algebra/reclos.spad.pamphlet (nonNull$RealClosure): Don't use `rep' as parameter name. * algebra/data.spad.pamphlet (Byte): Now a subdomain of NonNegativeInteger. Tidy. 2009-01-04 Gabriel Dos Reis * interp/daase.lisp (setdatabase): Set superdomain slot too. * interp/g-util.boot (superType): Handle current domain form. (maximalSuperType): Tidy. (noteSubDomainInfo): Call SETDATABASE. 2009-01-04 Gabriel Dos Reis * interp/buildom.boot (createEnum): Fix quoting. * interp/compat.boot (system): Likewise. * interp/astr.boot (ncEltQ): Fix declaration. * interp/compiler.boot (compMapCond'): Likewise. (compMapCond): Likewise. (compMapCondFun): Remove declaration. 2009-01-03 Gabriel Dos Reis * 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-02 Gabriel Dos Reis * interp/buildom.boot (UnionEqual): Don't call orderUnionEntries. (coerceUn2E): Likewise. (mkUnionFunList): Likewise. * interp/i-coerce.boot (coerceUnion2Branch): Likewise. (coerceBranch2Union): Likewise. ($newCompilerUnionFlag): Remove. (orderUnionEntries): Likewise. (mkPredList): Remove dead code. 2009-01-02 Gabriel Dos Reis * interp/c-util.boot (updateCapsuleDirectory): Record constant makers too. (replaceSimpleFunctions): Fold simple constant form makers. 2009-01-01 Gabriel Dos Reis * interp/pf2sex.boot (pfLiteral2Sex): Fix evaluation of intergers with non-decimal radix. * interp/scan.boot (rdigti?): Allow non-capital letters.