JACAL is a symbolic mathematics system for the simplification and manipulation of equations and single and multiple valued algebraic expressions constructed of numbers, variables, radicals, and algebraic functions, differential, and holonomic functions. In addition, vectors and matrices of the above objects are included.
This is free software, and you are welcome to redistribute it under
certain conditions; See the file COPYING with this program or type
(terms)();
to JACAL for details.
For a list of the features that have changed since the last JACAL release, see the file `ANNOUNCE'. For a list of the features that have changed over time, see the file `ChangeLog'.
The maintainer can be reached as `jaffer@ai.mit.edu'. The most recent information about JACAL can be found on JACAL's WWW home page:
http://swissnet.ai.mit.edu/~jaffer/JACAL.html
JACAL uses the Scheme library SLIB as a portable platform. Once SLIB has been installed (and is loaded when your Scheme implementation starts up), there should be no need for further configuration effort.
SLIB has initialization files for most Scheme implementations. It is available from the same locations and vendors as JACAL. See section `Installation' in SLIB.
If you also need a Scheme implementation, SCM (written in C) is available from the same locations and vendors as JACAL.
From your Scheme implementation, type (where `/usr/local/lib/jacal/math.scm' is a pathname sufficient to specify the file of that name in the JACAL directory):
(slib:load "/usr/local/lib/jacal/math.scm") => ... JACAL version 1a8, Copyright 1989-1997 Aubrey Jaffer JACAL comes with ABSOLUTELY NO WARRANTY; for details type `(terms)'. This is free software, and you are welcome to redistribute it under certain conditions; type `(terms)' for details. ;;; Type (math) to begin. (math) => type qed; to return to scheme, type help; for help. e0 :
and you are ready to try the commands described in the rest of the manual.
Some implementations give the ability to specify files to load
on
the commmand line. Assuming SCM is installed on your system (and
assuming the same location of `jacal/math.scm'), the line would be:
scm -il/usr/local/lib/jacal/math.scm -e"(math)"
An alias or shell script which contains this line can conveniently start JACAL for you.
As JACAL is a complicated program there are bugs which will occasionally
cause the program to stop with some sort of error reported by the
underlying Scheme system. In interactive implementations (such as SCM)
you can usually continue your session by typing (math)
. The
expression which was input to JACAL just before the error will be lost
but you should be able to otherwise continue with your session.
The command quit();
will end your JACAL session.
With non-interactive Scheme implementations the JACAL command
qed();
or typing the end-of-file character (C-z on MSDOS
and VMS, C-d on others) will end your JACAL session.
The command qed();
will return to the interactive Scheme session.
Typing (math)
will return to the JACAL session.
From the interactive Scheme session (exit)
or possibly an
end-of-file character will terminate the session.
Things that are labeled as Operators can occur in expressions output by
Jacal. Things that are labeled as Commands act upon their arguments and
do not generally occur in expressions output by Jacal. Things that are
labeled as flags are set
to control aspects of the Jacal
environment.
The examples throughout this text were produced using SCM
.
Jacal has several grammers it understands. The standard
grammar
is used in this manual. It is like simple TeX
grammar and algol
family computer languages.
Identifier names are case sensitive and can be any number of characters long.
Go to the first, previous, next, last section, table of contents.