|
|
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.