aboutsummaryrefslogtreecommitdiff
path: root/src/algebra
AgeCommit message (Collapse)AuthorFilesLines
2009-04-23 * interp/c-util.boot (extendsCategoryForm): Use current categorydos-reis6-1157/+66
body instead of previous previous version of it. * algebra/Makefile.pamphlet: Remove ES from bootstrap layer. Build it (and dependencies) at layer 1. * algebra/strap/ES.lsp: Remove. * algebra/strap/ES-.lsp: Likewise. * algebra/boolean.spad.pamphlet (Boolean): Don't use outputForm.
2009-04-23 * interp/compiler.boot ($IOFormDomains): New.dos-reis4-17/+16
(compAtom): Allow implicit coercion to IO forms for values of fundamental types. (compSymbol): Likewise. (compQuote): Likewise. * algebra/aggcat.spad.pamphlet (coerce$BinaryRecursiveAggregate): Don't hard code empty bracket.
2009-04-23 * interp/sys-constants.boot ($SystemInlinableConstructorNames):dos-reis4-121/+10
Include Identifier. * interp/compiler.boot (compElt): Fix up 0 and 1 shenannigan. * algebra/boolean.spad.pamphlet (Reference): Use Identifier. * algebra/Makefile.pamphlet (axiom_algebra_bootstrap): Remove REF. (axiom_algebra_bootstrap_last_layer): Likewise. * algebra/strap/REF.lsp: Remove.
2009-04-22 * algebra/Makefile.pamphlet: Move aggregates to layer 0.dos-reis2-42/+76
2009-04-21 * algebra/Makefile.pamphlet: Move aggregates to layer 0.dos-reis2-42/+136
2009-04-21 * algebra/Makefile.pamphlet: Move aggregates to layer 0.dos-reis2-46/+92
2009-04-21 * algebra/Makefile.pamphlet: Move aggregates to layer 0.dos-reis2-32/+60
2009-04-21 * algebra/Makefile.pamphlet: Move Fortran domains to user layer.dos-reis2-515/+42
2009-04-20 * interp/sys-constants.boot ($Identifier): New.dos-reis4-76/+87
* interp/compiler.boot (compQuote): Use the target mode if appropriate. * interp/i-spec2.boot (upQUOTE): Likewise. * algebra/syntax.spad.pamphlet: Use Identifier in lieu of Symbol.
2009-04-19 * algebra/any.spad.pamphlet (Binding): Define Rep. Tidy.dos-reis1-40/+37
(Contour): Likewise. (findBinding$Contour): Now return Maybe Binding. (findBinding$Scope): Likewise. (getProperties$Environment): Just return List Binding. (interactiveEnv$Environment): New.
2009-04-19 * algebra/mkfunc.spad.pamphlet (tuplify$InputForm): Tidy.dos-reis1-0/+1
* interp/i-output.boot (parms2String): New. (inputForm2String): Handle anonymous functions.
2009-04-18 * algebra/mkfunc.spad.pamphlet (InputForm): Remove assignment to Rep.dos-reis19-118/+117
(convert): Use per and rep operators. * algebra/stap: Updated cached Lisp translation.
2009-04-16 Fix SF/2763053dos-reis3-10/+10
* interp/sys-os.boot ($NaNvalue): Remove. (quietDoubleNaN): Import. * include/cfuns.h (quiet_double_NaN): Rename from NANQ. * lib/cfuns-c.c (quiet_double_NaN): Likewise. * algebra/draw.spad.pamphlet: Replace $NaNvalue with quietDoubleNaN. * algebra/plot.spad.pamphlet: Likewise. * algebra/plot3d.spad.pamphlet: Likewise.
2009-03-26 * boot/ast.boot (nativeType): Accept int16 and int32.dos-reis3-2/+28
(getFFIDatatype): Accept ReadWrite modifier. * algebra/data.spad.pamphlet (Int32): New. (UInt64): Likewise. * algebra/Makefile.pamphlet (axiom_algebra_layer_7): Include INT64 and UINT64.
2009-03-01 * interp/g-opt.boot (optimize): Remove non-qualifieddos-reis1-2/+2
interpretation of 'false' and 'true'. (optCond): Emit 'NOT', not 'NULL'. (optIF2COND): Likewise. (EqualBarGensym): Tidy.
2009-03-01 Optimization should not change slot numbers.dos-reis40-3737/+3968
2009-02-23 * interp/compiler.boot (compAtom): Don't interpret 'nil' as emptydos-reis6-46/+41
vector. (compSymbol): Don't interpret 'true' and 'false' as Boolean constants if domain Boolean is not in scope. * algebra/any.spad.pamphlet (Property): Tidy. * algebra/asp.spad.pamphlet (Asp34): Likewise. * algebra/functions.spad.pamphlet (BasicFunctions): Likewise. * algebra/lodop.spad.pamphlet (OppositeMonogenicLinearOperator): Likewise. * algebra/groebsol.spad.pamphlet: Import Boolean.
2009-02-192009-02-19 Aleksej Saushev <asau@inbox.ru>dos-reis1-1/+1
* configure.ac.pamphlet: Fix indention of CPP directives. Include <sys/types.h> when testing for openpty. src/ChangeLog 2009-02-19 Gabriel Dos Reis <gdr@cs.tamu.edu> * interp/sys-utility.boot (%hostByteOrder): Make a function. * algebra/system.spad.pamphlet (hostByteOrder$System): Adjust call. 2009-02-19 Aleksej Saushev <asau@inbox.ru> * lib/openpty.c: Include <sys/types.h> when testing for openpty.
2009-02-19Update bootstrap algebrados-reis1-1/+2
2009-02-19 * algebra/catdef.spad.pamphlet (characteristic$Ring): Make ados-reis2-2/+4
constant. * algebra/naalgc.spad.pamphlet (characteristic$NonAssociativeRing): Likewise.
2009-02-18(no commit message)dos-reis1-1/+1
2009-02-18 * interp/parse.boot (parseHas): Constants are not attributes.dos-reis2-11/+20
* interp/compiler.boot (compHasFormat): Handle signature for constants too. * interp/info.boot (actOnInfo): Likewise. * algebra/data.spad.pamphlet (sample$Byte): Make a constant. (SystemInteger): Export constant 'sample'. (SystemNonNegativeInteger): Likewise. * algebra/aggcat2.spad.pamphlet (FiniteLinearAggregateFunctions2): Use 'sample' or 'random' elements when allocating new aggregates.
2009-02-15 * algebra/data.spad.pamphlet (ByteBuffer): Tidy. Manage sizedos-reis2-27/+34
explicitly. * algebra/net.spad.pamphlet (writeBytes!$InetClientStreamSocket): Convert buffer to array before calling VM function. (readBytes!$InetClientStreamSocket): Likewise. * interp/sys-utility.boot (makeByteBuffer): Don't ask for fill pointers.
2009-02-09Tidy FunctionDescriptordos-reis1-1/+1
2009-02-08 Fix AW/103dos-reis6-156/+146
* algebra/catdef.spad.pamphlet (exquo$EuclideanDomain): Return 0 if first argument is 0. * algebra/integer.spad.pamphlet (exquo$Integer): Remove. * testsuite/interpreter/aw-103.input: New.
2009-02-08 Fix AW/66dos-reis128-1300/+937
* algebra/zerodim.spad.pamphlet: Restore use of one? * algebra/updivp.spad.pamphlet: Likewise. * algebra/unifact.spad.pamphlet: Likewise. * algebra/triset.spad.pamphlet: Likewise. * algebra/tools.spad.pamphlet: Likewise. * algebra/suts.spad.pamphlet: Likewise. * algebra/sttaylor.spad.pamphlet: Likewise. * algebra/string.spad.pamphlet: Likewise. * algebra/sregset.spad.pamphlet: Likewise. * algebra/si.spad.pamphlet: Likewise. * algebra/sf.spad.pamphlet: Likewise. * algebra/riccati.spad.pamphlet: Likewise. * algebra/rf.spad.pamphlet: Likewise. * algebra/regset.spad.pamphlet: Likewise. * algebra/rderf.spad.pamphlet: Likewise. * algebra/rdeef.spad.pamphlet: Likewise. * algebra/quat.spad.pamphlet: Likewise. * algebra/puiseux.spad.pamphlet: Likewise. * algebra/pscat.spad.pamphlet: Likewise. * algebra/prtition.spad.pamphlet: Likewise. * algebra/prs.spad.pamphlet: Likewise. * algebra/primelt.spad.pamphlet: Likewise. * algebra/polycat.spad.pamphlet: Likewise. * algebra/poly.spad.pamphlet: Likewise. * algebra/polset.spad.pamphlet: Likewise. * algebra/pfo.spad.pamphlet: Likewise. * algebra/perm.spad.pamphlet: Likewise. * algebra/pattern.spad.pamphlet: Likewise. * algebra/padiclib.spad.pamphlet:Likewise. * algebra/openmath.spad.pamphlet: Likewise. * algebra/opalg.spad.pamphlet: Likewise. * algebra/op.spad.pamphlet: Likewise. * algebra/omerror.spad.pamphlet: Likewise. * algebra/oderf.spad.pamphlet: Likewise. * algebra/odeef.spad.pamphlet: Likewise. * algebra/oct.spad.pamphlet: Likewise. * algebra/nlinsol.spad.pamphlet: Likewise. * algebra/newpoly.spad.pamphlet: Likewise. * algebra/naalgc.spad.pamphlet: Likewise. * algebra/naalg.spad.pamphlet: Likewise. * algebra/multpoly.spad.pamphlet: Likewise. * algebra/mring.spad.pamphlet: Likewise. * algebra/modring.spad.pamphlet: Likewise. * algebra/moddfact.spad.pamphlet: Likewise. * algebra/mkfunc.spad.pamphlet: Likewise. * algebra/matstor.spad.pamphlet: Likewise. * algebra/matrix.spad.pamphlet: Likewise. * algebra/matcat.spad.pamphlet: Likewise. * algebra/manip.spad.pamphlet: Likewise. * algebra/lodof.spad.pamphlet: Likewise. * algebra/liouv.spad.pamphlet: Likewise. * algebra/laplace.spad.pamphlet: Likewise. * algebra/irexpand.spad.pamphlet: Likewise. * algebra/intrf.spad.pamphlet: Likewise. * algebra/intpm.spad.pamphlet: Likewise. * algebra/intfact.spad.pamphlet: Likewise. * algebra/integer.spad.pamphlet: Likewise. * algebra/intclos.spad.pamphlet: Likewise. * algebra/intaux.spad.pamphlet: Likewise. * algebra/intalg.spad.pamphlet: Likewise. * algebra/intaf.spad.pamphlet: Likewise. * algebra/gpol.spad.pamphlet: Likewise. * algebra/gpgcd.spad.pamphlet: Likewise. * algebra/gb.spad.pamphlet: Likewise. * algebra/gaussian.spad.pamphlet: Likewise. * algebra/galutil.spad.pamphlet: Likewise. * algebra/galpolyu.spad.pamphlet: Likewise. * algebra/galfact.spad.pamphlet: Likewise. * algebra/fspace.spad.pamphlet: Likewise. * algebra/fs2ups.spad.pamphlet: Likewise. * algebra/fs2expxp.spad.pamphlet: Likewise. * algebra/free.spad.pamphlet: Likewise. * algebra/fraction.spad.pamphlet: Likewise. * algebra/fr.spad.pamphlet: Likewise. * algebra/fparfrac.spad.pamphlet: Likewise. * algebra/fortran.spad.pamphlet: Likewise. * algebra/fmod.spad.pamphlet: Likewise. * algebra/float.spad.pamphlet: Likewise. * algebra/ffx.spad.pamphlet: Likewise. * algebra/ffnb.spad.pamphlet: Likewise. * algebra/ffcg.spad.pamphlet: Likewise. * algebra/ffcat.spad.pamphlet: Likewise. * algebra/exprode.spad.pamphlet: Likewise. * algebra/expr.spad.pamphlet: Likewise. * algebra/expexpan.spad.pamphlet: Likewise. * algebra/elemntry.spad.pamphlet: Likewise. * algebra/efupxs.spad.pamphlet: Likewise. * algebra/efuls.spad.pamphlet: Likewise. * algebra/e04routine.spad.pamphlet: Likewise. * algebra/e04agents.spad.pamphlet: Likewise. * algebra/divisor.spad.pamphlet: Likewise. * algebra/derham.spad.pamphlet: Likewise. * algebra/defintrf.spad.pamphlet: Likewise. * algebra/defintef.spad.pamphlet: Likewise. * algebra/defaults.spad.pamphlet: Likewise. * algebra/d03agents.spad.pamphlet: Likewise. * algebra/d01weights.spad.pamphlet: Likewise. * algebra/d01routine.spad.pamphlet: Likewise. * algebra/d01agents.spad.pamphlet: Likewise. * algebra/curve.spad.pamphlet: Likewise. * algebra/crfp.spad.pamphlet: Likewise. * algebra/cont.spad.pamphlet: Likewise. * algebra/constant.spad.pamphlet: Likewise. * algebra/complet.spad.pamphlet: Likewise. * algebra/combfunc.spad.pamphlet: Likewise. * algebra/catdef.spad.pamphlet: Likewise. * algebra/brill.spad.pamphlet: Likewise. * algebra/array1.spad.pamphlet: Likewise. * algebra/algfunc.spad.pamphlet: Likewise. * algebra/algfact.spad.pamphlet: Likewise.
2009-02-07 * algebra/system.spad.pamphlet (hostByteOrder$System): New.dos-reis4-13/+47
* algebra/data.spad.pamphlet (ByteOrder): New. * algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include BYTEORD.
2009-02-05 Fix AW/440dos-reis1-1/+1
* algebra/integrat.spad.pamphlet (integrate$FunctionSpaceComplexIntegration): Use complexIntegrate for complex expressions. * testsuite/aw-440.input: New.
2009-02-052009-02-04 Waldek Hebisch <hebisch@math.uni.wroc.pl>dos-reis1-0/+3
Gabriel Dos Reis <gdr@cs.tamu.edu> Fix AW/441 * algebra/defintrf.spad.pamphlet (findRealZero$DefiniteIntegrationTools): Deal with simple zeros. * testsuite/interpreter/aw-441.input: New.
2009-02-04 * algebra/gaussian.spad.pamphlet (ComplexCategory): Reinstatedos-reis3-7/+41
attribute 'complex'. * algebra/Makefile.pamphlet: Tidy.
2009-02-04 * algebra/Makefile.pamphlet: Tidy.dos-reis3-376/+91
2009-02-04 * algebra/algfunc.spad.pamphlet: Quote symbols.dos-reis31-406/+458
* algebra/combfunc.spad.pamphlet: Likewise. * algebra/drawopt.spad.pamphlet: Likewise. * algebra/efstruc.spad.pamphlet: Likewise. * algebra/elemntry.spad.pamphlet: Likewise. * algebra/expr.spad.pamphlet: Likewise. * algebra/exprode.spad.pamphlet: Likewise. * algebra/float.spad.pamphlet: Likewise. * algebra/gaussian.spad.pamphlet: Likewise. * algebra/intaux.spad.pamphlet: Likewise. * algebra/irexpand.spad.pamphlet: Likewise. * algebra/laplace.spad.pamphlet: Likewise. * algebra/limitps.spad.pamphlet: Likewise. * algebra/liouv.spad.pamphlet: Likewise. * algebra/list.spad.pamphlet: Likewise. * algebra/lmdict.spad.pamphlet: Likewise. * algebra/manip.spad.pamphlet: Likewise. * algebra/matcat.spad.pamphlet: Likewise. * algebra/matrix.spad.pamphlet: Likewise. * algebra/mkfunc.spad.pamphlet: Likewise. * algebra/mset.spad.pamphlet: Likewise. * algebra/oct.spad.pamphlet: Likewise. * algebra/op.spad.pamphlet: Likewise. * algebra/patmatch1.spad.pamphlet: Likewise. * algebra/pattern.spad.pamphlet: Likewise. * algebra/quat.spad.pamphlet: Likewise. * algebra/sets.spad.pamphlet: Likewise. * algebra/transsolve.spad.pamphlet: Likewise. * algebra/vector.spad.pamphlet: Likewise.
2009-02-04 * algebra/boolean.spad.pamphlet (Boolean): Tidy.dos-reis2-53/+55
2009-02-02 * algebra/domain.spad.pamphlet (FunctionDescriptor): New.dos-reis3-5/+68
(OverloadSet): Likewise. (operations$ConstructorCategory): Likewise. * share/algebra: Update databases.
2009-02-01 * algebra/Makefile.pamphlet: Tidy layer 0 dependency.dos-reis4-78/+80
SETCAT and SETCAT- are no longer required for bootstrap. * algebra/SETCAT.lsp: Remove. * algebra/SETCAT-.lsp: Likewise.
2009-01-28 * algebra/domain.spad.pamphlet (findConstructor$Constructor): New.dos-reis1-1/+9
2009-01-15 * algebra/riccati.spad.pamphlet (innerlb$PrimitiveRatRicDE): Fixdos-reis1-1/+3
thinko. * interp/bootlex.lisp (get-decimal-number-token): New. (get-integer-in-radix): Likewise. (is-radix-char): Likewise. (get-spad-integer-token): Likewise. Use them. (get-BOOT-token): Use it. * interp/metalex.lisp: Tidy.
2009-01-13 * algebra/net.spad.pamphlet (InputByteConduit): Add readInt8!,dos-reis3-2/+70
readInt16!, readInt32!, readUInt8!, readUInt16!, readUInt32!.
2009-01-11 * interp/compiler.boot (getSuccessEnvironment): Don't specializedos-reis1-1/+1
on `has'. (getInverseEnvironment): Likewise. * algebra/equation2.spad.pamphlet (factorAndSplit$Equation): Fix misuses of `has'. * interp/functor.boot (mkTypeForm): Rename from mkDomainConstructor.
2009-01-09 * algebra/data.spad.pamphlet (Byte): Satisfy OrderedFinite.dos-reis3-12/+159
(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-07Fix documentationdos-reis2-8/+9
2009-01-07 * interp/sys-utility.boot (readByteFromFile): Tidy.dos-reis2-55/+48
(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-07 * algebra/net.spad.pamphlet (resolve$Hostname): Return a Maybe %.dos-reis1-12/+12
(connectot$NetworkClientSocket): Likewise. (connectot$InetClientStreamSocket): Likewise.
2009-01-07 * algebra/any.spad.pamphlet (Maybe): Rework.dos-reis1-22/+19
2009-01-06 * interp/sys-utility.boot (getVMType): IndexList are lists.dos-reis74-522/+564
* 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-032009-01-03 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis3-26/+5
* 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-30 * algebra/si.spad.pamphlet (size$SingleInteger): Compute value as dos-reis2-77/+77
extended integer.
2008-12-27 * algebra/catdef.spad.pamphlet (OrderedFinite): Export `min' anddos-reis5-142/+173
`max' values. * algebra/si.spad.pamphlet (SingleInteger): Now satisfies OrderedFinite. Tidy.
2008-12-27 * algebra/net.spad.pamphlet (readBytes!$InputByteConduit): Setdos-reis9-119/+127
length of buffer to count of bytes read. * algebra/si.spad.pamphlet (SingleInteger): Now formally subdomain of Integer.
2008-12-26 r12485@gauss: gdr | 2008-12-17 16:26:21 -0600dos-reis8-184/+314
Branch to improve reflection. r12493@gauss: gdr | 2008-12-20 23:29:51 -0600 Add domain representations for constructors. r12494@gauss: gdr | 2008-12-21 14:27:37 -0600 Consolidate constructor domains. r12502@gauss: gdr | 2008-12-22 20:36:21 -0600 Constructors are values. r12504@gauss: gdr | 2008-12-25 13:58:01 -0600 r12505@gauss: gdr | 2008-12-25 18:48:04 -0600 Commit ChangeLog.