|
|
1.1 root 1: .ds a "\s-2APL\s0
2: .ds a2 "\s-2APL2\s0
3: .ds f "\s-2FORTRAN\s0
4: .ds u "\s-2UNIX\s0
5: .ds qd "[\h'-12u']
6: .DA
7: .TL
8: UNIX* \*a\\\\11
9: User's Manual
10: .AU
11: John D. Bruner
12: A. P. Reeves
13: .AI
14: School of Electrical Engineering
15: .br
16: Purdue University
17: .br
18: West Lafayette, IN 47907
19: .PP
20: .hy 14
21: This manual is intended to
22: serve as a guide to the use
23: of \*u \*a.
24: .FS
25: *\*u is a trademark of Bell Laboratories.
26: .FE
27: It is not intended to be
28: a reference manual on
29: the \*a language;
30: rather,
31: it describes the local
32: implementation of \*a.
33: .PP
34: Portions of this manual are intended for
35: the new \*a user;
36: persons who have used other \*a
37: systems will probably want to skim most
38: sections,
39: and concentrate on the sections
40: concerning error messages,
41: the state indicator,
42: editing functions,
43: and the appendices.
44: For these users,
45: differences between \*u \*a
46: and standard \*a are noted
47: where appropriate.
48: .NH 1
49: What's a Workspace?
50: .PP
51: One of the most important
52: concepts pertaining to the
53: use of \*a is the idea of
54: a
55: ``workspace''.
56: Simply stated,
57: a
58: workspace
59: is a collection of
60: information
61: (including both
62: functions and data)
63: to be processed.
64: Programmers accustomed
65: to compiler languages
66: such as \*f may
67: find this concept somewhat
68: unusual
69: so let's explore it
70: a bit further.
71: .PP
72: Perhaps the best way
73: to start describing a
74: workspace is to define
75: another term \(em
76: ``file''.
77: A file is also a
78: collection of
79: information.
80: On \*u,
81: however,
82: a file
83: .I usually
84: contains only one
85: type of information;
86: e.g. a C program or
87: data for a \*f program.
88: A standard program,
89: perhaps written in \*f,
90: may access data in the file
91: by ``opening''
92: the file
93: and reading it.
94: The file may also
95: be ``created'',
96: written,
97: or removed.
98: .PP
99: \*a differs from \*f
100: in that, while it is running,
101: all of the information it
102: needs is internal to itself.
103: That is,
104: all of the variables that the
105: functions will require are
106: already available.
107: As functions are written,
108: they are added to this internal
109: storehouse of information.
110: As the functions are run,
111: and data is generated,
112: the data is added to this
113: internal storehouse.
114: \*a provides the facility
115: to save part or all of this
116: information in a special
117: format
118: (``workspace'' or "load" format)
119: in a \*u file.
120: This file can only be
121: used by \*a in later runs
122: (it should not,
123: for instance,
124: be printed on the line-printer).
125: .PP
126: In addition,
127: \*a is capable of working with
128: more conventional files,
129: which are in character format
130: and can be edited and displayed
131: outside of \*a.
132: These files are in
133: ``ASCII''
134: format.
135: .NH 1
136: Getting Into and Out of \*a
137: .NH 2
138: Getting on \*u
139: .PP
140: In order to use \*u \*a
141: you must first obtain a \*u account.
142: Your account will have a
143: ``login name''
144: and also a
145: ``password''.
146: Your
147: login name
148: is your user
149: identifier.
150: Find an unused \*u
151: terminal and turn it on.
152: Hold down the Control key
153: and type a D.
154: The terminal should erase
155: the screen,
156: print a message identifying
157: the \*u system,
158: and ask:
159: .sp
160: login:
161: .sp
162: Type your
163: ``login name''
164: followed by a carriage return.
165: The system will respond with:
166: .sp
167: Password:
168: .sp
169: Type your password.
170: \*u will not display
171: what you type
172: so someone cannot look
173: over your shoulder at the
174: terminal and steal your account.
175: .PP
176: When \*u is satisfied that you
177: can login
178: it will print the
179: ``message of the day'',
180: which is comprised of any
181: important news about the system,
182: and then it will type out a
183: dollar sign*:
184: .FS
185: *The dollar-sign prompt is used by the
186: ``standard'' shell
187: ``/bin/sh''.
188: If you are using the C-shell
189: (``/bin/csh'')
190: the prompt will be a percent sign.
191: The command interpreter which is used
192: is of little importance for the
193: examples in this manual.
194: .FE
195: .sp
196: $
197: .sp
198: This is the standard \*u prompt,
199: which means that it is waiting for
200: you to enter a command.
201: .NH 2
202: How do I start \*a?
203: .PP
204: The answer in this case is
205: extremely simple \(em
206: type the command:
207: .sp
208: $ apl
209: .sp
210: \*a will print a title
211: identifying itself and the
212: date of the current version,
213: will print ``clear ws'',
214: and will then tab 8 spaces
215: to the right.
216: This is \*a's prompt,
217: which means that it is
218: expecting you to type something.
219: The ``clear ws''
220: message means that
221: you do not have anything
222: in your workspace
223: (no functions or variables
224: have been defined).
225: .PP
226: Equally important to getting
227: into \*a is getting out.
228: To terminate \*a,
229: use the ``)off''
230: \*a system command.
231: You will once again get the
232: dollar-sign as a prompt.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.