|
|
| |
Algae(1) |
FreeBSD General Commands Manual |
Algae(1) |
algae - another matrix programming language
algae [-DhinpRrSsVx] [-d num] [-e
script] [ filename ... ]
algae is an interpreter for the Algae programming language. This language
provides a technical computing environment for numerical analysis.
This entry describes only how to run algae; see the manual
(either printed or on-line) for information on the Algae language, the
standard functions, the data types, etc. At algae's interactive
prompt, type "help" to get the basics.
The input to algae is read from the list of files on the
command line, or from standard input if the list is empty. Options are
introduced with a hyphen, except that a lone hyphen acts as a file name and
refers to standard input.
algae has the following options:
- -D
- turns on the disassembler, which prints algae's opcodes in a form
like assembly language. This is used for debugging the algae
implementation. You'll probably want to combine this with the -S
option.
- -di
- sets the debug level to i, where i is an integer. This is
normally of use only for debugging the algae implementation.
- -e script
- allows you to provide a script for algae to execute from the
command line, rather than from a file or from standard input. Such a
script is executed after any startup files but before any other files are
executed. Any number of -e options may be given, and the specified
scripts are executed in the order in which they appear on the command
line.
- -h
- prints a brief description of the command line arguments.
- -i
- causes algae to use interactive mode when reading from the standard
input device. Without this option, algae uses interactive mode only
when its input appears to be from a terminal. In interactive mode, input
is parsed a line at a time and exceptions do not cause algae to
exit.
- -n
- changes the way that scalars are displayed. The printing statements
normally precede the scalar's value with a tab, and follow it with a
newline. With this option set, neither the tab nor the newline is printed.
(For character scalars, the quotation marks are also omitted.) This option
affects the printing statements only, and has no effect on the functions
like printf.
- -p
- enables execution profiling, a means for determining the execution time
characteristics of your Algae program. When profiling is enabled, the
profiler periodically interrupts algae and records the line that is
currently being executed. When algae exits, it records this data in
the file algae.out in the current directory. Use the prof
function to read the algae.out file and summarize it by file and by
line number.
You may wish to use the strip function in conjunction
with profiling. Since strip removes the line and file information
from a function, any time spent in a call to that function gets charged
to the line from which it was called.
We've encountered several systems on which operating system
bugs prevent the execution profiler from working correctly. These
include a DECstation and a Titan, both with MIPS architectures. If you
have such a system, then algae should have been installed with
the execution profiler disabled. In that case, you'll get an error
message if you try to use the -p option.
- -R
- causes algae to run in restricted mode. The "system"
function is disabled, as are "pipes".
- -r
- forces algae to skip its command line editing and history facility.
This facility is normally available, unless your version of algae
was installed without it. The editing commands are similar to Emacs:
forward (C-f), backward (C-b), up (C-p), and down (C-n). You can also
change to vi style (M-C-j).
- -S
- skips reading algae's startup files. This means that many of the
standard functions will be unavailable.
- -s
- skips reading the user's startup file in ~/.algae.
- -V
- prints the version information.
- -x
- causes algae not to default to reading stdin when no file names are
given on the command line.
- algae.A
- The system startup file for algae. Often located in the
/usr/local/lib directory, its default name and path may be set to
something different during installation and they may be overridden with an
environment variable named ALGAE_RC0. This file is not read if the
-S option is given.
- ~/.algae
- The user's startup file, normally read after algae.A. This file
need not exist, and is skipped if either -S or -s option is
given. Its name may be overridden with the ALGAE_RC1 environment
variable.
- tools
- A directory containing Algae files to define many of the standard
functions. This is often named /usr/local/lib/algae, but its name
is irrelevant so long as algae.A correctly identifies it.
- algae.info
- The on-line version of the manual (along with algae.info-1,
algae.info-2, etc.). These should be in /usr/local/info, or
wherever your Info reader expects them.
Bugs should be reported to ksh@sideslip.org. See the "Bugs" section of
the manual for hints on how and when to report them. A list of known bugs is
also given there.
Copyright (C) 1994-2001 K. Scott Hunziker.
Copyright (C) 1990-1994 The Boeing Company.
Algae is free software. You can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the Free
Software Foundation; either version 2 of the License, or (at your option)
any later version.
Algae is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
more details.
You should have received a copy of the GNU General Public License
along with Algae; see the file LICENSE. If not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
The copyright to major portions of Algae belongs to The Boeing
Company. The following permission notice and warranty disclaimer pertain to
those portions of the code:
- Permission to use, copy, modify, and distribute this software and its
documentation for any purpose is hereby granted, provided that the above
copyright notice appear in all copies, that both the copyright notice and
this permission notice and warranty disclaimer appear in supporting
documentation, and that the names of Boeing or any of its entities not be
used in advertising or publicity pertaining to distribution of the
software without specific, written, prior permission.
- BOEING DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS, AND NONINFRINGEMENT.
IN NO EVENT SHALL BOEING BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
USE, DATA, OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE, OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
Caution: Use of this product as a substitute for a healthy
physical, emotional, and spiritual life is not recommended and could be
harmful.
algae was designed and implemented by Scott Hunziker and Mike Brennan.
Visit the GSP FreeBSD Man Page Interface. Output converted with ManDoc. |