NAME¶
yacas, yacas_client — small and flexible general-purpose computer algebra
system
SYNOPSIS¶
yacas [
options] [
{filename}]
DESCRIPTION¶
This manual page documents briefly the
yacas and
yacas_client
commands.
Yacas (Yet Another Computer Algebra System) is a small and highly
flexible general-purpose computer algebra language. The syntax uses a
infix-operator grammar parser. The distribution contains a small library of
mathematical functions, but its real strength is in the language in which you
can easily write your own symbolic manipulation algorithms. The core engine
supports arbitrary precision arithmetic, and is linked with the GNU arbitrary
precision math library, and is able to execute symbolic manipulations on
various mathematical objects by following user-defined rules.
This manual page was written for the
Debian GNU/Linux distribution
because the original program does not have a manual page.
OPTIONS¶
A summary of options is given below
- -c
- Inhibit printing of prompts "In>" and "Out>".
Useful for non-interactive sessions.
- -f
- Reads standard input as one file, but executes only the first statement in
it. (You may want to use a statement block to have several statements
executed.)
- -p
- Does not use terminal capabilities, no fancy editing on the command line
and no escape sequences printed. Useful for non-interactive sessions.
- -t
- Enable some extra history recall functionality in console mode: after
executing a command from the history list, the next unmodified command
from the history list will be automatically entered on the command
line.
- {filename}
- Reads and executes commands in the filename and exits. Equivalent to
"Load()".
- -v
- Prints version information and exits.
- -d
- Prints the path to the Yacas library directory and exits
The default operation of
Yacas is to run in the interactive console
mode.
Yacas accepts several options that modify its operation. Options
can be combined.
In addition to the console mode, an experimental persistent session facility is
provided through the script
yacas_client. By means of this script, the
user can configure third-party applications to pass commands to a constantly
running "Yacas server" and get output. The "Yacas server"
is automatically started by
yacas_client. It may run on a remote
computer; in that case the user should have a user account on the remote
computer and privileges to execute
yacas_client there, as well as rsh
or ssh access. The purpose of
yacas_client is to enable users to pass
commands to
Yacas within a persistent session while running another
application such as a text editor.
The script
yacas_client reads
yacas commands from the standard
input and passes them to the running "Yacas server"; it then waits 2
seconds and prints whatever output
yacas produced up to this time.
Usage may looks like this:
8:20pm Unix>echo "x:=3" | yacas_client
Starting server.
[editvi] [gnuplot]
True;
To exit Yacas, enter Exit(); or quit or Ctrl-c. Type ?? for help.
Or type ?function for help on a function.
Type 'restart' to restart Yacas.
To see example commands, keep typing Example();
In> x:=3
Out> 3;
In> 8:21pm Unix>echo "x:=3+x" | yacas_client
In> x:=3+x
Out> 6;
In> 8:23pm Unix>yacas_client -stop
In> quit
Quitting...
Server stopped.
8:23pm Unix>
Persistence of the session means that
yacas remembered the value of
"x" between invocations of
yacas_client. If there is not
enough time for Yacas to produce output within 2 seconds, the output will be
displayed the next time you call
yacas_client.
The "Yacas server" is started automatically when first used and can be
stopped either by quitting
yacas or by an explicit option
yacas_client -stop, in which case
yacas_client does not read
standard input.
The script
yacas_client reads standard input and writes to standard
output, so it can be used via remote shell execution. For instance, if an
account "user" on a remote computer "remote.host" is
accessible through ssh, then
yacas_client can be used remotely like
this:
echo "x:=2;" | ssh user@remote.host yacas_client
On a given host computer running the "Yacas server", each user
currently may have only one persistent Yacas session.
SEE ALSO¶
/usr/share/yacas/documentation/books.html (link to URL
file:/usr/share/yacas/documentation/books.html) or
http://www.xs4all.nl/~apinkus/manindex.html (link to URL
http://www.xs4all.nl/~apinkus/manindex.html) for more information.
AUTHOR¶
yacas was written by Ayal Pinkus (apinkus@xs4all.nl).
yacas is
available at
http://www.xs4all.nl/~apinkus/yacas.html (link to URL
http://www.xs4all.nl/~apinkus/yacas.html) .
This manual page was written by Gopal Narayanan (gopal@debian.org) for the
Debian GNU/Linux system (but may be used by others).