Diff attached.
Index: apl.texi =================================================================== --- apl.texi (revision 219) +++ apl.texi (working copy) @@ -479,7 +479,7 @@ Using a library root implies that all 10 library directories are contained in the same directory. This is good enough for single-user environments -is often not adequate for multi-user environments where some directories +but often not adequate for multi-user environments where some directories are not writable by users and different users have different home directories. For that reason the above library root scheme can be overridden by the @@ -496,12 +496,16 @@ @section APL Scripting -as already mentioned, it is possible to write APL scripts. Like for other +As already mentioned, it is possible to write APL scripts. Like for other script languages, the script starts with @option{#!}, followed by the absolute or relative path to the interpreter, followed by command line arguments passed on to the interpreter. In our case this could be, for example: +@verbatim + #! /bin/apl --id 1010 +@end verbatim + There are essentially two ways to run an APL script: redirecting the script file to stdin of the interpreter or making the script executable and indicate apl as the script interpreter (followed by some command line arguments for @@ -549,7 +553,8 @@ do not know in advance where the APL interpreter will be installed) then it must be in $PATH of the shell that runs the script). -In order to be really useful for scripting, two more features have been added: +@subsection Helpful features for scripting +In order to be really useful for scripting, three more features have been added: The system variable ⎕ARG contains all command line arguments passed to the interpreter. In the first example above this would be a nested 3-element @@ -668,7 +673,7 @@ @end verbatim -The @option{script} implies @option{--noCIN} so that the +The @option{--script} implies @option{--noCIN} so that the input lines for the interpreter are no longer echoed to the output. That is most likely what you want when writing a script. @@ -857,7 +862,7 @@ By default the logging facilities that shall be turned ON are defined statically. To change the logging facilities that shall be turned ON, you can edit the file src/Logging.def which defines the different logging -facilities. The first argument if macro log_def() tells if the logging +facilities. The first argument of macro log_def() tells if the logging facility shall be ON (1) or OFF (0). Static logging results in a faster interpreter than dynamic logging because @@ -966,7 +971,7 @@ creates a named lambda. body_statement can contain variable names ⍺ and ⍵ as well as function names ⍶ and ⍹ which are replaced by the actual arguments of the lambda. If both ⍺ and ⍵ are present in body_statement then the lambda -is dyadic. If only ⍹ is present then it is monadic, and if neither ⍺ nor ⍵ is +is dyadic. If only ⍵ is present then it is monadic, and if neither ⍺ nor ⍵ is present then the lambda is niladic. Likewise, if ⍶ and ⍹ are present then the lambda is a dyadic operator. If only @@ -973,7 +978,7 @@ ⍹ is present then it is a monadic operator, and if neither ⍶ nor ⍹ is present then the lambda is a normal function. -The way how a named lambda is implemented in GNU APL is that the statement +The way a named lambda is implemented in GNU APL is that the statement @verbatim FUN ← { body_statement }