APL System commands.


)digits n
	sets the number of digits displayed to n, from 1 to 19.

)fuzz n
	sets the fuzz to n.  The "fuzz" is the level of resolution for
	comparisons.   For example, if the fuzz is 1.e-4, the numbers
	1.1e-3 and 1.e-3 will be considered equal.

)origin n
	sets the origin to n, which can be any integer, not just 1 or 0
	The origin is the starting index of arrays.  For example, if
	the origin is 0, the first element of the array "a" is a[0].
	If the origin is 1, the first element is a[1].

)width n
	sets APL's idea of your terminal's carriage width.   This way
	you can control how many characters are printed per line.

)erase n
	gets rid of function or variable named n.

)save n
	saves all variables and functions in file named n.
	The format used is peculiar to APL workspaces and can only
	be read back in by APL.

)load n
	gets the stuff in file n (which must have been saved) back.

)copy n
	like )LOAD but variables and functions are not erased.  Things
	in the loaded file take precedence over stuff already in.  Using
	)COPY you can merge two workspaces together.

)clear
	discards everything.   All variables and functions are erased and
	the message "clear ws" is output.

)drop n
	deletes Unix file n from the current directory.  Note that file
	n may be any Unix file -- it does not have to be an apl file.

)continue
	This command performs two functions.  First, it saves you current
	workspace in a file called "continue".  After it has saved your
	workspace, APL is terminated.  This feature is especially handy
	because when APL is started, it will by default look for and load
	the workspace in the file "continue".

)off
	terminates APL.  A CTL-D will also terminate APL.  Note that the
	)OFF command does not automatically save the current workspace;
	if you wish to save it you must type a )SAVE command first.

)read n
	reads in a function from file n.  The first line is the header,
	with no del's.  The full APL\360 header is accepted.  All other
	lines in the file are lines in the function.  Lines are impli-
	citly numbered, and transfers are as usual.

)edit n
	runs the UNIX editor on file n, and then READ's it when
	you leave the editor.   If the function contains an error
	in line 0, APL will issue an error message when you exit the
	editor and will not read the function back in.  However, the
	function is still in its Unix file and you may type )EDIT
	again to recover.

)lib
	lists out all of the files in the current directory.   This performs
	essentially the same functuion as the Unix "ls" command.

)fns
	lists out all current functions.

)vars
	lists out all current variables.

)debug
	toggles a debugging switch, which can produce vast amounts
	of hopelessly cryptic output.

)script <file>
	If a file is specified, a transcript of the interacive
	session is appended to the file.  This continues until
	a ")script off" is executed.  The script file contains
	everything typed by the user, and everything typed out
	by APL, including error messages, etc. It does NOT, 
	however, contain anything printed by another process
	evoked by APL (Eg. output initiated by Lrun).

)vsave <file>
	Vsave then prompts you for the names of 
	variables/functions to be saved.  After you'v
	entered the last one, a null name exits the
	prompt mode.  The file is built and saved
	exactly as if it were an ordinary workspace.

)write fn
	This causes the function to be written out onto
	a file  of the same name.  It is useful if you have used the
	Lfx function to define or modify a function.  Previously
	there was no way to output a function once it was
	read in.

)editf fn
	This causes the function named to be written out
	onto a scratch file, and then edited, as with )EDIT.
	When the editor exits, the scratch file is deleted.
	This is the recommended way to edit functions, as it
	reduces the number of files left laying around.  (All
	functions are recorded in the workspace file.)
	If a copy of the function is required as a separate
	UNIX file, it may be written out via )WRITE, or the
	old )EDIT command may be used.

	NOTE:  If the edited function is changed so that it contains
	an error in line 0, APL will not read it.  In this case,
	APL writes the bad function to the file "apl_badfn".  If
	you use )EDITF and APL prints an error message when the
	edit is finished, you should use the )SHELL command to
	temporarily return to Unix and move "apl_badfn" to some
	other file.  You then may use the )EDIT command on that
	file to correct the error and read the function back in.

)trace
	This is similar to the )DEBUG command, but should be
	more useful.  When activated, it causes the name and
	line number of the function being executed to be
	printed out before each line is executed.

)untrace
	This disables a previously selected )TRACE command.

	*** NOTE ***
	The )trace and )untrace commands are subject to change
	in future releases of APL.  When it is practical,
	they will be changed to allow the tracing of selected
	functions, rather than all or none, like they work now.
	*** END NOTE ***

)shell
	This command suspends APL and brings up a temporary copy of the
	Unix "shell" (command program).  The shell may be used normally.
	When you log out from the shell, you will be returned to APL at
	the point where you left off.  )SHELL is thus allows you to
	momentarily interrupt your work without having to save your
	workspace, exit APL, and then later restart APL and reload your
	workspace.

)del n
	edits function n with a special APL editor.  This feature is not
	operable at the present time.

)code n
	produces the interpreter code for function n.  It is a debugging
	tool intended primarily for the development of improvements to APL.

If you find bugs, have comments, or anything else having to do
with APL, please mail them to user "reeves".
