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