% 
% F637 TEX A
% 
\documentstyle[apl]{article}
% 
% \input{aplbibl}
% 
% 
% APLBIBL
% 
% aplbibl.tex
%
%  Andreas Geyer-Schulz V1.0 May 1990
%
% Purpose: collect bibliographic data which is distributed over
%          a text in a single file.
%
% ;APLbibentry ...... precedes a normal entry in a bibliography.
%                     The entry MUST end with an empty line.
%                     ;cite can be used as usual.
%
%          ;APLbibentry;bibitem[Geyer]{geyers} Andreas Geyers,
%                       'Collecting Bibliographic Data'
%                       Tech. Report 12, 1990
%
% ;APLbibliography ... generates the bibliography
%
% generated by function APLBIBL in class TEX_DOCS.
 
\chardef\other=12
 
\newwrite\biblio
\immediate\openout\biblio=biblio
\outer\def\APLbibentry{\par\medbreak\APLcopytoblankline}
 
\def\APLcopytoblankline{\begingroup\APLsetupcopy\APLcopyans}
 
\def\APLsetupcopy{\def\do##1{\catcode`##1=\other}\dospecials
    \catcode`\D=\other \obeylines}
{\obeylines \gdef\APLcopyans#1
{\def\next{#1}%
\ifx\next\empty\let\next=\endgroup%
\else\immediate\write\biblio{\next} \let\next=\APLcopyans\fi\next}}
 
\def\APLbibliography{\immediate\closeout\biblio
                     \immediate\openin5=biblio
                     \read5 to\APLtesteof
                     \if\APLtesteof\par \relax
                     \else\immediate\closein5
                     \begin{thebibliography}{99999}
% 
%                      \input{biblio}
% 
% 
% BIBLIO
% 
% 
% end BIBLIO
% 
                     \end{thebibliography}\fi}
 
% This is the end of aplbibl.tex
% 
% end APLBIBL
% 
\topmargin=1cm
\oddsidemargin=2cm
\evensidemargin=2cm
\addtolength{\oddsidemargin}{-1in}
\addtolength{\evensidemargin}{-1in}
\addtolength{\topmargin}{-1in}
\headheight=3mm
\headsep=7mm
\footheight=0mm
\topskip=0cm
\textwidth=17cm
\textheight=25cm
\title{Class\ %
APL2TEX
\\ of Category \\%
OOPS - System Browser
}
\author{\ }%
\markboth{Class\ %
APL2TEX
\ of category\ %
OOPS - System Browser
}{Class\ %
APL2TEX
\ of category\ %
OOPS - System Browser
}\pagestyle{myheadings}
\begin{document}
\maketitle
\tableofcontents
% 
% \input{F634}
% 
% 
% F634
% 
% F634
\section{Description of Class\ %
APL2TEX
}
% 
% \input{F635}
% 
% 
% F635
% 
% F635
{\parindent=0pt\parsep=0pt %
\begin{flushleft}{\bf Description}\end{flushleft}
CLASS{\protect\APLunderbar}DESCRIPTION:
{\APLbr}                                    APL2TEX implements the
{\APLbr}basic functionality needed to typeset APL
{\APLbr}documentation with \LaTeX. The basic functionality includes
{\APLbr}\begin{enumerate}
{\APLbr}             \item printing a workspace as a \LaTeX\
{\APLbr}document,                          \item a processor for merging all
{\APLbr}include files of a \LaTeX\ document            into one large
{\APLbr}file (convenient for e-mail \dots),                   \item
{\APLbr}printing an array,
{\APLbr}   \item an array in boxed representation,
{\APLbr}                \item a function in canonical representation,
{\APLbr}                             \item a function as displayed by
{\APLbr}the del-editor,                           \item a function in
{\APLbr}direct definition form,                                \item
{\APLbr}an APL expression as typed in by the user (six spaces
{\APLbr}indented),     \item and one step of a dialogue (an user input
{\APLbr}followed by the                  computer{\APLquote}s response).
{\APLbr}                                          \end{enumerate}
{\APLbr}                                                       \par
{\APLbr}
{\APLbr}
{\APLbr}                   The class APL2TEX can be easily converted
{\APLbr}to APL workspace form            and does not depend on the
{\APLbr}object oriented system. APL2TEX                 is the version
{\APLbr}for IBM{\APLquote}s APL2 interpreter under the CMS operating
{\APLbr}system.  \par
{\APLbr}
{\APLbr}                                You should always define a
{\APLbr}temporary A-disk, because some of               APL2TEX{
{\APLbr}\APLquote}s functions generate synthetic file identifiers and write
{\APLbr}      files on the A-disk without checking for existing
{\APLbr}files. Files             may be overwritten.
{\APLbr}
{\APLbr}                                             \vspace{2mm}
{\APLbr}
{\APLbr}{\bf Requirements:} \LaTeX\  and the apl.sty style file.
{\APLbr}         \par
{\APLbr}
{\APLbr}                                   {\bf Warning:} This is a
{\APLbr}testversion. No responsibility for any
{\APLbr} damage or any other failures is taken by the author.
{\APLbr}              Use on your own risk.
{\APLbr}                           \par
{\APLbr}
{\APLbr}                                      {\bf Bug Reports:}
{\APLbr}Please report bugs to Andreas Geyer-Schulz
{\APLbr}        by sending a note to \newline
{\APLbr}                     APLAG AT AWIWUW11.BITNET.
{\APLbr}               \par
{\APLbr}
{\APLbr}                                         \vspace{2mm}
{\APLbr}
{\APLbr}{Vienna, March 1991} \hfill {Andreas Geyer-Schulz} \par
{\APLbr}     \vspace{2mm}
{\APLbr}                  \begin{flushleft}
{\APLbr}                               Andreas Geyer-Schulz \\
{\APLbr}                                            Department of
{\APLbr}Applied Computer Science \\
{\APLbr}Vienna University of Economics and Business Administration \\
{\APLbr}        Augasse 2--6, A-1090 Vienna, AUSTRIA \\
{\APLbr}                     ANDREAS{\APLat}AWIWUW11.bitnet \par
{\APLbr}                                         \end{flushleft}
{\APLbr}
{\APLbr}\vspace{2mm}
{\APLbr}
{\APLbr}                  RESPONSIBILITIES: the basic \TeX\
{\APLbr}typesetting support. \par
{\APLbr}                                            ROLE: CONSULTANT
{\APLbr}\par
{\APLbr}
{\APLbr}        COLLABORATORS: \par
{\APLbr}                        CONSULTANTS: None \par
{\APLbr}                                     CLIENTS:
{\APLbr}TEX{\protect\APLunderbar}DOCS \par
{\APLbr}
\par}
% 
% end F635
% 
\section{A Short Protocol of Class\ %
APL2TEX
}
% 
% \input{F636}
% 
% 
% F636
% 
% F636
{\parsep=0pt\parindent=0pt
\par\vspace{2mm}\begin{flushleft}{\bf Protocol}{\em\ %
Document
}\end{flushleft}\begin{footnotesize}%
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
PRTEX{\protect\APLunderbar}WS
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}fileid{\APLgreater} {\APLleftarrow}
{\APLbr}PRTEX{\protect\APLunderbar}WS {\APLless}author{\APLgreater} {\APLless}wsid{
{\APLbr}\APLgreater} {\APLstile}    {\APLless}fileid{\APLgreater} {
{\APLbr}\APLleftarrow} 0 PRTEX{\protect\APLunderbar}WS {\APLless}author{
{\APLbr}\APLgreater} {\APLless}wsid{\APLgreater} {\APLstile}    {
{\APLbr}\APLless}fileid{\APLgreater} {\APLleftarrow} 1
{\APLbr}PRTEX{\protect\APLunderbar}WS {\APLless}author{\APLgreater} {\APLless}wsid{
{\APLbr}\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 PRTEX{\protect\APLunderbar}WS typesets all objects in the
{\APLbr}workspace.          By default the  functions and variables of
{\APLbr}APL2TEX          are not included in the      workspace print
{\APLbr}out.          If you want to include the functions and
{\APLbr}variables          used in the print processing, specify a left
{\APLbr}argument of 1.          {\APLless}author{\APLgreater} and {
{\APLbr}\APLless}wsid{\APLgreater} are text vectors.
\end{minipage}\par
\end{footnotesize}
\par\vspace{2mm}\begin{flushleft}{\bf Protocol}{\em\ %
Internal
}\end{flushleft}\begin{footnotesize}%
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
{\protect\APLdelta}{\protect\APLdelta}FV
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}return code{\APLgreater} {\APLleftarrow} {
{\APLbr}\APLless}vector of text lines{\APLgreater}
{\APLbr}{\protect\APLdelta}{\protect\APLdelta}FV {\APLless}file identifier{\APLgreater} {
{\APLbr}\APLstile}  {\APLless}vector of text lines{\APLgreater} {
{\APLbr}\APLleftarrow} {\protect\APLdelta}{\protect\APLdelta}FV {\APLless}file
{\APLbr}identifier{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 {\protect\APLdelta}{\protect\APLdelta}FV writes a vector
{\APLbr}of text lines to a file with variable
{\APLbr}record length or reads a file.
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
APLFNSLINE
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
APLFNSLINE {\APLless}text line{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 APLFNSLINE converts one line of APL code to a sequence of
{\APLbr}                       \LaTeX\ macros.
{\APLbr}
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
APLLINE
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
APLLINE {\APLless}text line{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 APLLINE typesets one line of text as a sequence of fixed
{\APLbr}       spaced \LaTeX\ macros.
{\APLbr}
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
APLTOTEX
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}vector of lines{\APLgreater} {\APLleftarrow}
{\APLbr}APLTOTEX {\APLless}line of text{\APLgreater} {\APLstile}  {
{\APLbr}\APLless}vector of lines{\APLgreater} {\APLleftarrow} {\APLquote}F{
{\APLbr}\APLquote} APLTOTEX {\APLless}line of text{\APLgreater} {
{\APLbr}\APLstile}  {\APLless}vector of lines{\APLgreater} {\APLleftarrow} {
{\APLbr}\APLquote}V{\APLquote} APLTOTEX {\APLless}line of text{
{\APLbr}\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 APLTOTEX translates a line of text into a sequence of
{\APLbr}    \LaTeX\   macro calls. The default is variable spacing ({
{\APLbr}\APLquote}V{\APLquote}).
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
APLTOTEX{\protect\APLunderbar}S
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}vector of lines{\APLgreater} {\APLleftarrow}
{\APLbr}APLTOTEX{\protect\APLunderbar}S {\APLless}line of text{
{\APLbr}\APLgreater} {\APLstile}  {\APLless}vector of lines{\APLgreater} {
{\APLbr}\APLleftarrow} {\APLquote}F{\APLquote}
{\APLbr}APLTOTEX{\protect\APLunderbar}S {\APLless}line of text{\APLgreater} {\APLstile}  {
{\APLbr}\APLless}vector of lines{\APLgreater} {\APLleftarrow} {\APLquote}V{
{\APLbr}\APLquote} APLTOTEX{\protect\APLunderbar}S {\APLless}line of text{
{\APLbr}\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 APLTOTEX{\protect\APLunderbar}S translates a line of text
{\APLbr}into a          sequence of latex   macro calls, characters
{\APLbr}and numbers.          This function should be    used for
{\APLbr}preprocessing text which          is interleaved with a few APL
{\APLbr}symbols and short APL expressions.          The default is
{\APLbr}variable      spacing ({\APLquote}V{\APLquote}), for fixed spacing
{\APLbr}      use {\APLquote}F{\APLquote}.
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
DISPLAY
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}boxed representation of array{\APLgreater} {
{\APLbr}\APLleftarrow} DISPLAY {\APLless}array{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 DISPLAY draws a boxed diagram of any nested array.
{\APLbr} DISPLAY is   functional equivalent to IBM{\APLquote}s
{\APLbr}version.
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
FIXEDSPACING
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}boxed letter{\APLgreater} {\APLleftarrow}
{\APLbr}FIXEDSPACING {\APLless}letter{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 FIXEDSPACING boxes each letter in order to simulate equal
{\APLbr}                       spaced typing.
{\APLbr}
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
FNSFMT
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}vector representation{\APLgreater} {
{\APLbr}\APLleftarrow} FNSFMT {\APLless}canonical representation{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 FNSFMT translates the canonical function representation to
{\APLbr}         the  vector representation of the function.
{\APLbr}
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
FNSLIST
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}filename{\APLgreater} FNSLIST {\APLless}object
{\APLbr}name{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 FNSLIST formats a subsection header and the code to input
{\APLbr}        the   file which contains a \LaTeX\ macro stream
{\APLbr}which typesets          the   APL code of the APL object.
{\APLbr}
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
FOLD
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}folded text matrix{\APLgreater} {\APLleftarrow}
{\APLbr}FOLD {\APLless}text matrix{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 FOLD mimicks APL2s formatting algorithm for arrays.
{\APLbr}  The matrix  is cut in columns and the columns are printed
{\APLbr}       one after the     other. Broad tables can thus
{\APLbr} be restored by cut and paste.
\end{minipage}\par
\end{footnotesize}
\par\vspace{2mm}\begin{flushleft}{\bf Protocol}{\em\ %
Internal Local Adaption
}\end{flushleft}\begin{footnotesize}%
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
BEGIN{\protect\APLunderbar}ARRAY
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}start of array macro sequence{\APLgreater} {
{\APLbr}\APLleftarrow} BEGIN{\protect\APLunderbar}ARRAY
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 BEGIN{\protect\APLunderbar}ARRAY defines the \LaTeX\
{\APLbr}macros which precede          an APL     array.
{\APLbr}
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
END{\protect\APLunderbar}ARRAY
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}end of array macro sequence{\APLgreater} {
{\APLbr}\APLleftarrow} END{\protect\APLunderbar}ARRAY
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 END{\protect\APLunderbar}ARRAY defines the \LaTeX\ macros
{\APLbr}which precede          an APL       array.
{\APLbr}
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
LOCAL{\protect\APLunderbar}PAGE
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}latex macros defining the size of a local page{
{\APLbr}\APLgreater} {\APLleftarrow} LOCAL{\protect\APLunderbar}PAGE
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 LOCAL{\protect\APLunderbar}PAGE defines the size of a
{\APLbr}page. All relevant changes          are made here.
{\APLbr}
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
PRINTING{\protect\APLunderbar}WIDTH
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}integer{\APLgreater} {\APLleftarrow}
{\APLbr}PRINTING{\protect\APLunderbar}WIDTH
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 PRINTING{\protect\APLunderbar}WIDTH sets the number of
{\APLbr}characters per screen line.                     This value has to
{\APLbr}be set to the maximal numbers of characters            per
{\APLbr}printed line.
\end{minipage}\par
\end{footnotesize}
\par\vspace{2mm}\begin{flushleft}{\bf Protocol}{\em\ %
Internal Translation Table
}\end{flushleft}\begin{footnotesize}%
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
TEXM
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}translation table{\APLgreater}{\APLleftarrow}TEXM
{\APLbr}{\APLquote}{\APLquote}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 TEXM generates a translation table          which maps
{\APLbr}EACH symbol of    the atomic          vector to a \LaTeX\ macro
{\APLbr}name.
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
TEXM{\protect\APLunderbar}S
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}translation table{\APLgreater}{
{\APLbr}\APLleftarrow}TEXM{\protect\APLunderbar}S {\APLquote}{\APLquote}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 TEXM{\protect\APLunderbar}S generates a translation table
{\APLbr}        which maps symbols of the  atomic          vector to
{\APLbr}a \LaTeX\ macro name. All standard characters  are NOT
{\APLbr} mapped (lowercase alphabet, uppercase alphabet,
{\APLbr}numbers).
{\APLbr}
\end{minipage}\par
\end{footnotesize}
\par\vspace{2mm}\begin{flushleft}{\bf Protocol}{\em\ %
Internal Utility
}\end{flushleft}\begin{footnotesize}%
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
FLAT
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}return code{\APLgreater} {\APLleftarrow} FLAT {
{\APLbr}\APLless}in file name{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 FLAT implements the recursive scan of the \TeX\ files.
{\APLbr}
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
TO{\protect\APLunderbar}APL
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}vector of lines{\APLgreater} {\APLleftarrow}
{\APLbr}TO{\protect\APLunderbar}APL {\APLless}vector of lines{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 TO{\protect\APLunderbar}APL translates a vector of tex
{\APLbr}lines          to a vector of APL      lines.
{\APLbr}
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
TOUPPER
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}upper case string{\APLgreater} {\APLleftarrow}
{\APLbr}TOUPPER {\APLless}lower case string{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 TOUPPER translates lower case to upper case and passes all
{\APLbr}                       other characters.
{\APLbr}
\end{minipage}\par
\end{footnotesize}
\par\vspace{2mm}\begin{flushleft}{\bf Protocol}{\em\ %
Logical Document Element
}\end{flushleft}\begin{footnotesize}%
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
PRTEX{\protect\APLunderbar}ARRAY
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}LaTeX code{\APLgreater} {\APLleftarrow}
{\APLbr}PRTEX{\protect\APLunderbar}ARRAY {\APLless}variable name{\APLgreater} {
{\APLbr}\APLstile}  {\APLless}return code{\APLgreater} {\APLleftarrow}
{\APLbr}{\APLless}file name{\APLgreater}
{\APLbr}PRTEX{\protect\APLunderbar}ARRAY {\APLless}variable name{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 PRTEX{\protect\APLunderbar}ARRAY prints the \LaTeX\ code
{\APLbr}of {\APLless}variable{\APLgreater} to a file named
{\APLbr} by the CMS file name {\APLless}filename{\APLgreater}. {
{\APLbr}\APLless}variable{\APLgreater} is printed as
{\APLbr}displayed by the APL2 function {\APLuptackjot}. {\APLless}file name{
{\APLbr}\APLgreater} and {\APLless}variable name{\APLgreater}
{\APLbr}are text vectors.
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
PRTEX{\protect\APLunderbar}BOXEDARRAY
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}LaTeX code{\APLgreater} {\APLleftarrow}
{\APLbr}PRTEX{\protect\APLunderbar}BOXEDARRAY {\APLless}variable name{
{\APLbr}\APLgreater} {\APLstile}  {\APLless}return code{\APLgreater} {
{\APLbr}\APLleftarrow} {\APLless}file name{\APLgreater}
{\APLbr}PRTEX{\protect\APLunderbar}BOXEDARRAY {\APLless}variable name{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 PRTEX{\protect\APLunderbar}BOXEDARRAY 
{\APLbr} prints the \LaTeX\ code of        {\APLless}variable{
{\APLbr}\APLgreater} to a file named        by the CMS file name {
{\APLbr}\APLless}filename{\APLgreater}.       {\APLless}variable{\APLgreater} is
{\APLbr}printed in boxed        representation as displayed by the
{\APLbr}APL2 function DISPLAY.        {\APLless}file name{\APLgreater}
{\APLbr}and {\APLless}variable name{\APLgreater} are text   vectors.
{\APLbr}
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
PRTEX{\protect\APLunderbar}DIALOG
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}LaTeX code{\APLgreater} {\APLleftarrow}
{\APLbr}PRTEX{\protect\APLunderbar}DIALOG {\APLless}APL expression{\APLgreater}
{\APLbr}{\APLstile}  {\APLless}return code{\APLgreater} {
{\APLbr}\APLleftarrow} {\APLless}file name{\APLgreater}
{\APLbr}PRTEX{\protect\APLunderbar}DIALOG {\APLless}APL expression{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 PRTEX{\protect\APLunderbar}DIALOG simulates and prints one
{\APLbr}interaction        of user and     computer. The right
{\APLbr}argument of PRTEX{\protect\APLunderbar}DIALOG        is a text
{\APLbr}string     containing the APL expression normally        typed in
{\APLbr}by the user. User input is printed in        bold face, six
{\APLbr}spaces indented with           proportional        spacing. The
{\APLbr}response of the APL interpreter (if     any) is        printed
{\APLbr}with fixed spacing thus simulating a
{\APLbr}traditional type writer.
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
PRTEX{\protect\APLunderbar}EXPR
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}LaTeX code{\APLgreater} {\APLleftarrow}
{\APLbr}PRTEX{\protect\APLunderbar}EXPR {\APLless}APL expression{\APLgreater} {
{\APLbr}\APLstile}  {\APLless}return code{\APLgreater} {\APLleftarrow}
{\APLbr}{\APLless}file name{\APLgreater}
{\APLbr}PRTEX{\protect\APLunderbar}EXPR {\APLless}APL expression{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 PRTEX{\protect\APLunderbar}EXPR takes a text string as
{\APLbr}right argument which is        typeset as an APL expression typed
{\APLbr}in by the user:        six spaces indented    and bold face.
{\APLbr}
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
PRTEX{\protect\APLunderbar}FN
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}LaTeX code{\APLgreater} {\APLleftarrow} {
{\APLbr}\APLless}file name{\APLgreater} PRTEX{\protect\APLunderbar}FN {
{\APLbr}\APLless}function name{\APLgreater} {\APLstile}  {\APLless}LaTeX code{
{\APLbr}\APLgreater} {\APLleftarrow} {\APLless}file name{\APLgreater}
{\APLbr}PRTEX{\protect\APLunderbar}FN {\APLless}operator name{
{\APLbr}\APLgreater} {\APLstile}  {\APLless}return code{\APLgreater} {
{\APLbr}\APLleftarrow} {\APLless}file name{\APLgreater}
{\APLbr}PRTEX{\protect\APLunderbar}FN {\APLless}function name{\APLgreater} {\APLstile}  {
{\APLbr}\APLless}return code{\APLgreater} {\APLleftarrow} {\APLless}file
{\APLbr}name{\APLgreater} PRTEX{\protect\APLunderbar}FN {
{\APLbr}\APLless}operator name{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 PRTEX{\protect\APLunderbar}FN prints the \LaTeX\ code of
{\APLbr}the del-editor        representation of a {\APLless}function{
{\APLbr}\APLgreater} or an {\APLless}operator{\APLgreater} to a file
{\APLbr}named        by the CMS file  name {\APLless}filename{
{\APLbr}\APLgreater}.
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
PRTEX{\protect\APLunderbar}FNCR
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}LaTeX code{\APLgreater} {\APLleftarrow}
{\APLbr}PRTEX{\protect\APLunderbar}FNCR {\APLless}function name{\APLgreater} {
{\APLbr}\APLstile}  {\APLless}LaTeX code{\APLgreater} {\APLleftarrow}
{\APLbr}PRTEX{\protect\APLunderbar}FNCR {\APLless}operator name{
{\APLbr}\APLgreater} {\APLstile}  {\APLless}return code{\APLgreater} {
{\APLbr}\APLleftarrow} {\APLless}file name{\APLgreater}
{\APLbr}PRTEX{\protect\APLunderbar}FNCR {\APLless}function name{\APLgreater} {\APLstile}  {
{\APLbr}\APLless}return code{\APLgreater} {\APLleftarrow} {
{\APLbr}\APLless}file name{\APLgreater} PRTEX{\protect\APLunderbar}FNCR {
{\APLbr}\APLless}operator name{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 PRTEX{\protect\APLunderbar}FNCR prints the \LaTeX\ code of
{\APLbr}the canonical representation              of a {
{\APLbr}\APLless}function{\APLgreater} or an {\APLless}operator{\APLgreater} to a
{\APLbr}file named        by the    CMS file name {\APLless}filename{
{\APLbr}\APLgreater}.
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
PRTEX{\protect\APLunderbar}FNDD
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}LaTeX code{\APLgreater} {\APLleftarrow}
{\APLbr}PRTEX{\protect\APLunderbar}FNDD {\APLless}direct definition{
{\APLbr}\APLgreater} {\APLstile}  {\APLless}return code{\APLgreater} {
{\APLbr}\APLleftarrow} {\APLless}filename{\APLgreater}
{\APLbr}PRTEX{\protect\APLunderbar}FNDD {\APLless}direct definition{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 PRTEX{\protect\APLunderbar}FNDD prints the \LaTeX\ code of
{\APLbr}the {\APLless}direct definition{\APLgreater}        of  a {
{\APLbr}\APLless}function{\APLgreater} or {\APLless}operator{
{\APLbr}\APLgreater} to a file named        by the CMS file name   {
{\APLbr}\APLless}filename{\APLgreater}. The direct definition        must be a
{\APLbr}character vector.
\end{minipage}\par
\end{footnotesize}
\par\vspace{2mm}\begin{flushleft}{\bf Protocol}{\em\ %
Utility
}\end{flushleft}\begin{footnotesize}%
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
FILE{\protect\APLunderbar}TO{\protect\APLunderbar}APL
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}returncode{\APLgreater} {\APLleftarrow} {
{\APLbr}\APLless}fileid in{\APLgreater}
{\APLbr}FILE{\protect\APLunderbar}TO{\protect\APLunderbar}APL {\APLless}fileid out{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 FILE{\protect\APLunderbar}TO{\protect\APLunderbar}APL
{\APLbr}converts the text of a cms file named {\APLless}fileID in{
{\APLbr}\APLgreater}       from TEX macros to APL2 symbols and writes the new
{\APLbr}text       to cms file     named {\APLless}fileID out{
{\APLbr}\APLgreater}.
\end{minipage}\par
\par\vspace{3pt}\begin{flushleft} Method{\bf\ %
FLATTEN
}\end{flushleft}%
\begin{minipage}[t]{8.25cm}%
{\APLless}return code{\APLgreater} {\APLleftarrow} {
{\APLbr}\APLless}fileid out{\APLgreater} FLATTEN {\APLless}file name in{
{\APLbr}\APLgreater} {\APLstile}  {\APLless}return code{\APLgreater} {
{\APLbr}\APLleftarrow} FLATTEN {\APLless}file name in{\APLgreater}
\end{minipage}\hspace{0.5cm}\begin{minipage}[t]{8.25cm}%
 FLATTEN recursively collects all small and scattered
{\APLbr}   \TeX\      files and writes one large file.
{\APLbr}
\end{minipage}\par
\end{footnotesize}
\par}
% 
% end F636
% 
% 
% end F634
% 
\APLbibliography
\end{document}
% 
% end F637 TEX A
% 

