aboutsummaryrefslogtreecommitdiff
path: root/src/algebra
AgeCommit message (Collapse)AuthorFilesLines
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.
2008-12-21 * interp/define.boot (checkRepresentation): Take a thirddos-reis8-40/+36
argument. Provide view morphisms for domain extensions. (compCapsule): Adjust call. * algebra/alql.spad.pamphlet (DataList): Use per and rep. * algebra/fortmac.spad.pamphlet (MachineInteger): Likewise. * algebra/fortran.spad.pamphlet (FortranExpression): Likewise. * algebra/integer.spad.pamphlet (NonNegativeInteger): Likewise. (PositiveInteger): Likewise. * algebra/ituple.spad.pamphlet (InfiniteTuple): Likewise. * algebra/matrix.spad.pamphlet (RectangularMatrix): Likewise. * algebra/pf.spad.pamphlet (InnerPrimeField): Likewise. * algebra/radix.spad.pamphlet (BinaryExpansion): Likewise. (DecimalExpansion): Likewise. (HexadecimalExpansion): Likewise.
2008-12-20 * algebra/newdata.spad.pamphlet (SplittingNode): Define Rep asdos-reis5-138/+160
constant. Remove definitions for `per' and `rep'. * algebra/regset.spad.pamphlet (RegularTriangularSet): Likewise. * algebra/sregset.spad.pamphlet (SquareFreeRegularTriangularSet): Likewise. * algebra/triset.spad.pamphlet (GeneralTriangularSet): Likewise. (WuWenTsunTriangularSet): Likewise.
2008-12-16 r12470@gauss: gdr | 2008-12-14 17:43:50 -0600dos-reis1-1/+1
Forgot to commit ChangeLog. r12471@gauss: gdr | 2008-12-14 19:11:21 -0600 Fix typo in PrimitiveRatRicDE. r12472@gauss: gdr | 2008-12-15 01:40:45 -0600 Reformat preparse.lisp. r12473@gauss: gdr | 2008-12-15 03:25:17 -0600 Tidy. r12474@gauss: gdr | 2008-12-15 21:33:54 -0600 Remove unused codes. r12475@gauss: gdr | 2008-12-15 21:57:22 -0600 . r12476@gauss: gdr | 2008-12-15 23:07:49 -0600 Tidy fatal diagnostics. r12477@gauss: gdr | 2008-12-15 23:50:02 -0600 Fold iterator.boot into compiler.boot.
2008-12-14 r12459@gauss: gdr | 2008-12-12 18:18:31 -0600dos-reis19-2114/+1939
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-12-09 * algebra/term.spad.pamphlet: New. Implement Arity anddos-reis4-4/+138
OperatorCategory. * algebra/Makefile.pamphlet (axiom_algebra_layer_15): Include ARITY. (axiom_algebra_layer_16): Include OPERCAT. * share/algebra: Update databases.
2008-12-09 r12415@gauss: gdr | 2008-12-06 11:42:45 -0600dos-reis5-39/+31
Implement basic support for pattern matching. r12416@gauss: gdr | 2008-12-06 18:09:19 -0600 Parse case pattern match. r12417@gauss: gdr | 2008-12-06 21:28:30 -0600 Implement basic case pattern matching for retractable domain. r12418@gauss: gdr | 2008-12-07 00:58:58 -0600 Refine retractability implementation. r12419@gauss: gdr | 2008-12-07 01:39:32 -0600 Update cached Lisp translation r12420@gauss: gdr | 2008-12-07 03:52:09 -0600 r12421@gauss: gdr | 2008-12-07 10:30:44 -0600 Implement type recovery too. r12422@gauss: gdr | 2008-12-07 19:18:09 -0600 Simplify LET-forms and COND-forms. r12423@gauss: gdr | 2008-12-07 21:21:12 -0600 Fix typos r12424@gauss: gdr | 2008-12-08 01:14:54 -0600 Parse case-pattern in the interpreter. r12427@gauss: gdr | 2008-12-08 20:32:29 -0600 Handle RetractableTo T.
2008-12-05 r12404@gauss: gdr | 2008-12-04 21:21:54 -0600dos-reis4-5/+7
Branch for fixing CoercibleFrom changes. r12405@gauss: gdr | 2008-12-05 01:34:50 -0600 * algebra/fs2ups.spad.pamphlet (FunctionSpaceToUnivariatePowerSeries): Revert previous requirement change on parameter. * algebra/manip.spad.pamphlet (PolynomialRoots): Likewise. * algebra/rf.spad.pamphlet (PolynomialCategoryQuotientFunctions): Likewise. * algebra/sum.spad.pamphlet (GosperSummationMethod): Likewise. * share/algebra: Update databases.
2008-12-01 * interp/define.boot (disallowNiAttribute): Remove.dos-reis5-25/+25
(compDefineFunctor1): Don't use it anymore. (compCategoryItem): Filter out nil attributes here.
2008-11-30 * interp/define.boot (mustInstantiate): Fix thinko introduced bydos-reis4-9/+10
earlier tweaks. (mkExplicitCategoryFunction): Likewise.
2008-11-24 * algebra/lodop.spad.pamphlet (OrdinaryDifferentialRing): Tidy.dos-reis2-9/+10
* algebra/sex.spad.pamphlet (SExpressionCategory): Fix breakage from last commit.
2008-11-23 * algebra/seg.spad.pamphlet (SegmentCategory): Extenddos-reis6-38/+20
ConvertibleFrom S. * algebra/newpoint.spad.pamphlet (PointCategory): Extend ConvertibleFrom List R. * algebra/misc.spad.pamphlet (SingletonAsOrderedSet): Now ConvertibleTo Symbol. * algebra/integer.spad.pamphlet (RomanNumeral): Now ConvertibleFrom Symbol. * algebra/float.spad.pamphlet (Float): Now ConvertibleFrom SF. * algebra/sex.spad.pamphlet (SExpressionCategory): Extend ConvertibleFrom Str, ConvertibleFrom Sym, ConvertibleFrom Int, ConvertibleFrom Flt, ConvertibleFrom List %.
2008-11-21Update cached algebra lisp translationdos-reis5-30/+33
2008-11-21 * algebra/alql.spad.pamphlet (Database): Now CoercibleFrom List S.dos-reis23-111/+36
* algebra/asp.spad.pamphlet (Asp20): Now CoercibleFrom MAT FEXPR. (Asp6): Now CoercibleFrom Vector FEXPR. * algebra/catdef.spad.pamphlet (Algebra): Extend CoercibleFrom R. (Ring): Extend CoercibleFrom Integer. * algebra/formula.spad.pamphlet (ScriptFormulaFormat): Now CoercibleFrom E. * algebra/fortran.spad.pamphlet (FortranCode): Remove redundant signature. * algebra/fs2ups.spad.pamphlet (FunctionSpaceToUnivariatePowerSeries): Tidy parameter. * algebra/laurent.spad.pamphlet (UnivariateLaurentSeriesConstructorCategory): Extend CoercibleFrom UTS. * algebra/manip.spad.pamphlet (PolynomialRoots): Tidy parameter. * algebra/modmon.spad.pamphlet (ModMonic): Now CoercibleFrom Rep. * algebra/ore.spad.pamphlet (UnivariateSkewPolynomial): Now CoercibleFrom Variable x.
2008-11-21 * algebra/annacat.spad.pamphlet (NumericalIntegrationProblem):dos-reis3-12/+1
Remove redundant signature. (NumericalODEProblem): Likewise. (NumericalPDEProblem): Likewise. (NumericalOptimizationProblem): Likewise. * algebra/forttyp.spad.pamphlet (FortranType): Likewise. * algebra/void.spad.pamphlet (Void): Now CoercibleTo OutputForm.
2008-11-20Fix documentationdos-reis1-4/+2
2008-11-20 * algebra/wtpol.spad.pamphlet (WeightedPolynomials): Nodos-reis15-78/+36
HomotopicTo P. (OrdinaryWeightedPolynomials): Likewise. * algebra/modmonom.spad.pamphlet (ModuleMonomial): Now HomotopicTo MM. * algebra/matrix.spad.pamphlet (coerce$RectangularMatrix): Remove redundant signature. * algebra/lodop.spad.pamphlet (OrdinaryDifferentialRing): Now HomotopicTo HomotopicTo R. * algebra/alql.spad.pamphlet (DataList): Now HomotopicTo List S. * algebra/array1.spad.pamphlet (Tuple): Now HomotopicTo PrimitiveArray S. * algebra/kl.spad.pamphlet (CachableSet): Now HomotopicTo S. * algebra/java.spad.pamphlet (JavaBytecode): Now HomotopicTo Byte. * algebra/fname.spad.pamphlet (FileNameCategory): Extends HomotopicTo String. * algebra/data.spad.pamphlet (Byte): Now HomotopicTo Character.
2008-11-20 * algebra/coerce.spad.pamphlet (HomotopicTo): New.dos-reis4-2/+22
* algebra/exposed.lsp.pamphlet: Expose it. * algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include HOMOTOP.
2008-11-20 * algebra/coerce.spad.pamphlet (CoercibleFrom): New.dos-reis89-6763/+263
(ConvertibleFrom): Likewise. (RetractableTo): Use it. * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include KRCFROM and KVTFROM. * share/algebra/: Update databases.
2008-11-15 * algebra/Makefile.pamphlet: Individual .spad files are .PRECIOUS.dos-reis2-2/+6
2008-11-03 * algebra/syntax.spad.pamphlet (Syntax): Print syntax objects asdos-reis2-2/+4
s-expressions. * algebra/sex.spad.pamphlet (SExpression): Print strings as String.
2008-10-27 * configure.ac.pamphlet: Look for path to `awk'.dos-reis5-8/+5
Instantiate src/hyper/presea.
2008-10-25 * interp/sys-os.boot: Import oa_socket_read_byte asdos-reis1-0/+9
readByteFromStreamSocket. Import oa_socket_write_byte as writeByteToStreamSocket. * include/sockio.h (oa_socket_read_byte): Declare. (oa_socket_write_byte): Likewise. * lib/sockio-c.c (oa_socket_read_byte): Define. (oa_socket_write_byte): Likewise. * algebra/net.spad.pamphlet (readByteIfCan!$InetClientStreamSocket): Implement. (writeByteIfCan!$InetClientStreamSocket): Likewise. * etc/asq.c.pamphlet: Update build rules for asq$(EXEEXT).
2008-10-24 Add basic support for stream client socket.dos-reis6-38/+234
* lib/sockio-c.c (oa_inet_pton): Define. (oa_get_host_address): Likewise. * algebra/net.spad.pamphlet (IP4Address): New. (NetworkClientSocket): Likewise. (InetClientStreamSocket): Likewise. * algebra/data.spad.pamphlet (DataArray): Rename from DataBuffer. (ByteBuffer): Rename from ByteArray. Reimplement. * algebra/exposed.lsp.pamphlet: Expose IP4Address, InetClientStreamSocket, NetworkClientSocket.
2008-10-22 * algebra/exposed.lsp.pamphlet: Unexpose BinaryFile.dos-reis2-107/+0
* algebra/files.spad.pamphlet (BinaryFile): Remove.
2008-10-22 * algebra/net.spad.pamphlet (InputOutputBinaryFile): New.dos-reis4-2/+54
(position$InputBinaryFile): New. (position!$InputBinaryFile): Likewise. * algebra/exposed.lsp.pamphlet: Expose InputOutputBinaryFile. * algebra/Makefile.pamphlet (axiom_algebra_layer_user): Add IOBFILE.
2008-10-19 * algebra/syntax.spad.pamphlet (Syntax): Now belong todos-reis3-25/+31
RetractableTo Integer, RetractableTo DoubleFloat, RetractableTo Symbol, and RetractableTo String.
2008-10-19 * algebra/syntax.spad.pamphlet (Syntax): Simplify.dos-reis1-42/+36
2008-10-18Fix typodos-reis1-1/+1
2008-10-18 Fix AW/374dos-reis1-1/+3
* algebra/radix.spad.pamphlet (intgroup$RadixExpansion): Check for big radix.
2008-10-18 Fix AW/293dos-reis2-5/+28
* algebra/gaussian.spad.pamphlet (ComplexCategory): Remove complex attribute.
2008-10-17 Fix AW/413, AW/414dos-reis6-14/+12
* src/algebra/fr.spad.pamphlet: Fix missing returns in loops. * src/algebra/gdpoly.spad.pamphlet: Likewise. * src/algebra/lmdict.spad.pamphet: Likewise. * src/algebra/plot3d.spad.pamphlet: Likewise. * src/algebra/prs.spad.pamphlet: Likewise. * src/algebra/sups.spad.pamphlet: Likewise.
2008-10-16 Fix AW/101dos-reis1-1/+24
* algebra/laplace.spad.pamphlet (lapkernel): Handle derivatives.
2008-10-15 * algebra/mkfunc.spad.pamphlet (unparse$InputForm): Usedos-reis1-2/+1
inputForm2String$Lisp.
2008-10-15 * algebra/mkfunc.spad.pamphlet (coerce$InputForm): Displaydos-reis1-4/+12
InputForm as a one-dimensional stream of characters suitable for input to the interpreter. * interp/i-output.boot: Implement conversion of InputForm to displayed OutputForm.