4.3BSD/usr/contrib/apl/man/apl.1

Compare this file to the similar file:
Show the results in this format:

.de BO
[\fB\\$1\fR]
..
.TH APL 1 "3 August 1983"
.UC 4
.SH NAME
apl  \- apl interpreter
.SH SYNPOSIS
.B apl
.BO \-m
.BO \-e
.BO \-q
.BO \-r
.BO \-t
.BO \-c
.BO \-C
.BO \-d
.BO \-D
[ws]
.br
.B apl2
.BO \-m
.BO \-e
.BO \-q
.BO \-r
.BO \-t
.BO \-c
.BO \-C
.BO \-d
.BO \-D
[ws]
.SH DESCRIPTION
This is the Unix APL interpreter.
It has lived through several different versions of
Unix and grown steadily more complex.
Currently,
a version of APL for Unix on the PDP-11
and the VAX is supported.
This version supports monadic and dyadic domino,
a state indicator of sorts,
and Unix I/O quad functions.
.PP
The best documentation concerning the
use of APL once it has been started
from the shell is the
\fIUnix APL\\11 User's Manual\fR.
This manual includes a list of the
APL character set,
system commands,
quad functions,
and i-beam functions,
as well as an overall description of the
use of APL.
The specifics are contained in the
four appendices for easy reference
by the more experienced user.
.PP
The command invoking APL may optionally contain
the name of a workspace file to be loaded
(default is ``continue'',
or,
if ``continue'' does not exist in the current directory,
APL starts executing with a ``clear ws'').
.PP
There are all sorts of flags which may be specified
when APL is invoked.
Only a subset of these are of general usefulness;
the remainder exist for convenience in
debugging and software maintenance purposes.
In the following description,
the flags are presented from
those which are of the most general interest
to those which are of interest only to
persons maintaining APL.
.PP
Normally, APL runs in ``ASCII mode''.
(This is discussed more fully following the
description of the various flags.)
If ``\-m'' is specified,
APL ``maps'' the standard input and
standard output as appropriate for use
with an APL terminal.
.PP
By default, APL attempts to determine whether or
not the standard input is a terminal.
If not,
all input will be echoed to the standard output.
In this fashion,
when APL is run with a pipe or disc file
as input,
the output clearly shows the commands
issued along with their results.
The ``\-e'' flag forces APL to echo its input
to its output regardless of the input device.
Similarly, ``\-q'' (``quiet'')
forces APL not to echo its input to the standard output.
.PP
The flag ``\-r'' has meaning only when the Purdue
EE editor XED is used.
This flag is passed by APL to XED to
invoke funny XED stuff.
This is generally a non-portable feature.
.PP
By default,
APL places its scratch files into /tmp.
If the ``\-t'' flag is specified,
temporary files will be placed into the
current directory.
.PP
By default,
APL catches fatal signals
(e.g. memory fault,
floating-point exception,
etc.)
and prints a termination message of the
form:
.IP
	fatal signal: message
.PP
It then exits normally.
If the flag ``\-c'' or ``\-C'' is specified,
it will print this error message and then
exit via an ``abort'',
producing a core dump.
If the flag ``\-d'' or ``\-D'' is specified,
it will not catch fatal errors,
and thus will be automatically terminated
by the Unix kernel if a fatal signal
is received.
(This will also invoke a core dump.)
These flags are useful for debugging APL,
but aren't of much use to the ordinary user.
.PP
The program ``apl2'' is identical to ``apl''
except that ``apl'' is double-precision and
``apl2'' is single-precision.
Workspaces are stored in whatever precision
is in use,
and are converted if necessary automatically
when they are ``)load''ed.
Effectively, ``apl2'' has twice
as much space in its internal workspace.
.PP
APL is designed to operate principally from
ASCII terminals.
Upper-case letters are used for the various
APL symbols,
as described in a separate document.
Overstrike characters,
which generally will not appear as overstruck
characters on a CRT screen,
are generated by typing the first character,
a control-H,
and the second character.
The order of the two characters is not significant.
The workspace used by APL is stored in this
special ASCII format.
.PP
APL does support APL terminals.
To use APL from an APL terminal,
it is necessary to specify the ``\-m''
flag when calling APL from the shell;
this causes the APL character set to
be mapped to/from ASCII for input/output.
The workspace file is still stored in
ASCII format;
thus work may be done interchangeably
on both types of terminals.
.SH HISTORY
APL was originally written at Bell Labs by
Ken Thompson,
sometime before version six Unix.
It was modified for a while at
Yale University,
and then came to Purdue University,
where it has undergone extensive
modification.
It is currently being supported by
the Electrical Engineering Unix network.
Complaints, suggestions, or whatever
should be forwarded to user ``bruner''
on the EE Network system,
or sent to either
John Bruner
or
Dr. Anthony P. Reeves
in the school of Electrical Engineering
at Purdue University.
.SH FILES
/tmp/apled.###### - editor temporary file
.br
/tmp/aplws.###### - workspace temporary file
.br
continue - default workspace file
.SH "SEE ALSO"
aplcvt(1) \- convert between PDP-11 and VAX workspace formats
.br
aplopr(1) \- output APL files to the Printronix printer
.br
cata(1) \- display functions with APL line numbers
.br
prws(1) \- print workspace
.SH BUGS
Character comparisons do not work.
.br
Only a restricted form of dyadic format is available.
Laminate is not supported.
.br
The workspace size on the PDP-11 is limited to about
5000 items in APL and
10000 in APL2.
.br
The workspace size on the VAX
is limited only by the virtual memory system.