Search All of the Math Forum:
Views expressed in these public forums are not endorsed by
NCTM or The Math Forum.



SAML, the Christmas release (961228)
Posted:
Dec 28, 1996 12:41 PM


This is a (rather delayed) release of SAML, the Simple Algebraic Math Library, a free C library for computer algebra. The tarball is available at the usual place. There aren't many new features, this is essentially a cleanup of 960828. The most important changes are:
o Documentation
The documentation has been moved to a separate subdirectory and should be reasonably uptodate.
o Library
* plugged a memory leak in Algext.c * some changes in Ratio.c to accomodate for rational functions * renamed header files * the horrible parse_poly() has been removed, and replaced by a generic saml_parse() which should be appropriate for all types, like tensors. New files simpleparser.c and simplelexers.c.
o Factorint
Factorint uses saml_parse() to read the numbers, which means that you can write things like "factorint 2^671" and it will work.
o Induce
* We use saml_parse() now, which simplifies a few things. * The static limit on the size of the interpreter stack has been removed. * New syntax ~~ for modulo.
o Samuel
* Experimental support for rational functions. * The lexical analyzer has been rewritten. * Piping to a nonexistent command will no longer kill samuel, we catch SIGPIPE now. * The "listvariables" command is now `??' instead of `?' since we use the questionmark for something else. * New syntax ~~ for the modulo operator, as in induce. For the moment it's only syntactic sugar for an external function called modulo(), but the goal is to ultimately replace the repeatedsubstitution operator `>>' which is too lowlevel and very unsafe. * It is now possible to read tensors (or other objects) from files and pipes thanks to the new saml_parse() function, in particular you can have functions returning tensors.
Your feedback would be very much appreciated (I'm serious). Send questions, remarks, bug reports etc. either to me <bousch@topo.math.upsud.fr> or to the SAML mailing list <saml@topo.math.upsud.fr>.
Here is the entry for the Linux Software Map:
Begin3 Title: SAML, the Simple Algebraic Math Library Version: 961228 Entereddate: 28DEC96 Description: SAML is a C library for symbolic calculations, accompanied by some application programs (samuel, factorint, induce). The library provides an objectoriented framework for defining and handling mathematical types, and implements the most common data types of computer algebra: integers, reals, fractions, complex numbers, polynomials, tensors, matrices, etc. The application programs consist of an interactive symbolic calculator (samuel), a programming language (induce) and a program to factorize integers (factorint). Keywords: Computer algebra, C, library, symbolic calculus, multipleprecision arithmetic, quadratic sieve Author: bousch@topo.math.upsud.fr (Thierry Bousch) Maintainedby: bousch@topo.math.upsud.fr (Thierry Bousch) Primarysite: topo.math.upsud.fr /pub/bousch 229kB saml961228.tgz Platforms: Requires a decent Un*x system, gcc 2.5.0 or later, gdbm, perl and gmake. TeXinfo is needed for the documentation. Bison and the readline library can be useful. Copyingpolicy: GPL End



