Commit | Line | Data |
---|---|---|
fc3ceb55 KT |
1 | .TH APL 1 10/19/79 |
2 | .UC | |
3 | .SH NAME | |
4 | apl \- an apl interpreter | |
5 | .SH SYNOPSIS | |
6 | .B apl | |
7 | .SH DESCRIPTION | |
8 | .I Apl | |
9 | is an APL interpreter. | |
10 | All of the operators are exactly as in apl\e360. | |
11 | Overstrikes are often | |
12 | required, and they work (use ctrl-h). | |
13 | .PP | |
14 | Function definition is not what you would expect. Functions are loaded | |
15 | from files. The first line of the file is the function header, as you | |
16 | would expect it but with no del. The rest of the file is the lines | |
17 | of the function. Lines are numbered, but there are no | |
18 | square brackets with line numbers. If you say | |
19 | )READ FILE it will load the function | |
20 | in that file. If you say )EX FILE it will put you in the | |
21 | editor to change that file. Upon exit, it will read the file in | |
22 | as though by )READ. | |
23 | .PP | |
24 | All of the usual operators are available, including domino. | |
25 | Also available are monadic encode and epsilon. | |
26 | .LP | |
27 | The following | |
28 | .I apl | |
29 | system commands are available. | |
30 | .TP | |
31 | )ASCII | |
32 | .br | |
33 | changes terminal to accept and print ASCII characters and operators; | |
34 | this is the default. | |
35 | If you are stuck in APL mode on an ASCII terminal, `"' is `)' and | |
36 | lowercase letters map to uppercase. | |
37 | .TP | |
38 | )APL | |
39 | .br | |
40 | changes terminal to accept and print APL characters. Erase is set to | |
41 | \*W and kill is set to \*a. | |
42 | .TP | |
43 | )DIGITS n | |
44 | .br | |
45 | sets the number of digits displayed to n, from 1 to 19. | |
46 | .TP | |
47 | )FUZZ n | |
48 | .br | |
49 | sets the fuzz to n. | |
50 | .TP | |
51 | )ORIGIN n | |
52 | .br | |
53 | sets the origin to n, which should be 1 or 0. | |
54 | .TP | |
55 | )WIDTH n | |
56 | .br | |
57 | sets | |
58 | .IR apl \&'s | |
59 | idea of your terminal's carriage width. | |
60 | .TP | |
61 | )ERASE n | |
62 | .br | |
63 | gets rid of function or variable named n. | |
64 | .TP | |
65 | )SAVE n | |
66 | .br | |
67 | saves all variables and functions (workspace) in file named n. | |
68 | Workspaces are sensitive to changes in | |
69 | .I apl. | |
70 | .TP | |
71 | )LOAD n | |
72 | .br | |
73 | gets the workspace in file n (which must have been | |
74 | )SAVE'd.) | |
75 | .TP | |
76 | )COPY n | |
77 | .br | |
78 | like )LOAD but variables and functions are not erased. Things | |
79 | in the loaded file take precedence over stuff already in. | |
80 | .TP | |
81 | )CLEAR | |
82 | .br | |
83 | clears the workspace. | |
84 | .TP | |
85 | )DROP n | |
86 | .br | |
87 | deletes file n in your directory, which need not be saved from | |
88 | .I apl. | |
89 | .TP | |
90 | )CONTINUE | |
91 | .br | |
92 | exits and saves workspace in file | |
93 | .I continue | |
94 | which is loaded next time you run | |
95 | .I apl. | |
96 | .TP | |
97 | )OFF | |
98 | .br | |
99 | exits | |
100 | .I apl. | |
101 | .TP | |
102 | )READ n | |
103 | .br | |
104 | reads in a function from file \fIn\fR. The first line is the header, | |
105 | with no del's. The full APL\360 header is accepted. All other | |
106 | lines in the file are lines in the function. Lines are implicitly numbered, | |
107 | and transfers are as usual. There are no labels. | |
108 | .TP | |
109 | )EDIT n | |
110 | .br | |
111 | runs the editor | |
112 | .IR ed (1) | |
113 | on file \fIn\fR, and then )READ's the file when you leave the editor. | |
114 | .TP | |
115 | )EX n | |
116 | .br | |
117 | runs the editor | |
118 | .IR ex (1) | |
119 | on file \fIn\fR, and then )READ's the file when | |
120 | you leave the editor. | |
121 | .TP | |
122 | )VI n | |
123 | .br | |
124 | runs the editor | |
125 | .IR vi (1) | |
126 | on file \fIn\fR, and then )READ's the file when | |
127 | you leave the editor. | |
128 | .TP | |
129 | )LIB | |
130 | .br | |
131 | lists out all of the files in the current directory. | |
132 | .TP | |
133 | )FNS | |
134 | .br | |
135 | lists out all current functions. | |
136 | .TP | |
137 | )VARS | |
138 | .br | |
139 | lists out all current variables. | |
140 | .TP | |
141 | )DEBUG | |
142 | .br | |
143 | toggles a debugging switch, which can produce vast amounts | |
144 | of hopelessly cryptic output. | |
145 | .SH FILES | |
146 | apl_ws \- temporary workspace file | |
147 | .br | |
148 | continue \- continue workspace | |
149 | .SH AUTHORS | |
150 | Ken Thompson, Ross Harvey, Douglas Lanam | |
151 | .SH BUGS | |
152 | This program has not been extensively used or tested. | |
153 | .bp | |
154 | .SH ASCII CHAR MNEMONICS | |
155 | .nf | |
156 | .ta 0.5i 1.0i 3.0i 3.5i 4.0i | |
157 | ||
158 | & \(*L and # \(mu times | |
159 | \- \- minus + \(pl add | |
160 | < < less than > > greater than | |
161 | = = equal to , , comma | |
162 | % \(di divide * * exponential (power) | |
163 | ! ! factorial and combinations ? ? deal | |
164 | .le \(<= less than or equal .ge \(>= greater than or equal | |
165 | .ne \(!= not equal .om \(*W omega (not used) | |
166 | .ep \(*e epsilon .rh \(*r shape (rho) | |
167 | .nt \(no not (also \'~\') .tk \(ua take (also \'^\') | |
168 | .dr \(da drop .it \(*i iota | |
169 | .ci \(ci circular function .al \(*a alpha (not used) | |
170 | .cl \(lc maximum (ceiling) .fl \(lf minimum (floor) | |
171 | .dl \(*D del (not used) .de \(gr upside down del | |
172 | .jt \(de small circle (null) .qd \(sq quad | |
173 | .ss \(sb right U (not used) .sc \(sp left U (not used) | |
174 | .si \(ca Down U .su \(cu U (not used) | |
175 | .[^ \(gr upside-down del .bv \o'\(lf\(rf' decode (base) | |
176 | .rp \o'\(lc\(rc' encode (rep) .br \(or residue (mod) | |
177 | .sp \(<- assignment (also '_') .go \(-> goto | |
178 | .or V or .nn \o'\(*L~' nand | |
179 | .nr \o'v~' nor .lg \o'*\(ci' log | |
180 | .rv \o'\(ci\(or' reversal .tr \o'\(ci\e' transpose | |
181 | .rb reverse bar .cb \o',-' comma bar ( not used) | |
182 | .sb \o'/-' slash bar .bb \o'\e-' blackslash bar | |
183 | .gu \o'\(*D\(or' grade up .gd \o'\(gr\(or' grade down | |
184 | .qq \o'\(sq\(fm' quote quad .dm \o'\(sq:' domino | |
185 | .lm \o'\(ca\(de' lamp .ib \o'\(rc\(lc\(lf\(rf' I-beam | |
186 | .ex execute (not used) .fr format(not used) | |
187 | .di diamond (not used) .ot out (not used) | |
188 | .ld \o'\(*D~' locked del (not used) ._a A alias for \'A\' | |
189 | ._b B alias for \'B\' ._c C alias for \'C\' | |
190 | ._d D alias for \'D\' ._e E alias for \'E\' | |
191 | ._f F alias for \'F\' ._g G alias for \'G\' | |
192 | ._h H alias for \'H\' ._i I alias for \'I\' | |
193 | ._j J alias for \'J\' ._k K alias for \'K\' | |
194 | ._l L alias for \'L\' ._m M alias for \'M\' | |
195 | ._n N alias for \'N\' ._o O alias for \'O\' | |
196 | ._p P alias for \'P\' ._q Q alias for \'Q\' | |
197 | ._r R alias for \'R\' ._s S alias for \'S\' | |
198 | ._t T alias for \'T\' ._u U alias for \'U\' | |
199 | ._v V alias for \'V\' ._w W alias for \'W\' | |
200 | ._x X alias for \'X\' ._y Y alias for \'Y\' | |
201 | ._z Z alias for \'Z\' | |
202 | .fi |