Home
ML/I User's Manual ! Appendix P Implementation on the ICL 2900
Contents
1. badly wrong The limit is implemented by holding a quota of lines ML I User s Manual Appendix P Implementation on ICL 2900 under EMAS left in 12 if 12 ever goes negative the process is aborted 12 is initially 500 but may be changed by the user At the end of a process a message of the form At end of process N lines M calls is output to the debugging file preceded if 18 equals 1 by a list of the currently defined constructions P 4 1 I O errors All files are opened as soon as ML T is entered Failure to open any file may be followed by other advisory messages which are self explanatory P 4 1 1 Too many lines to the debugging file Message Debugging file lines quota exhausted Description The value of 12 the quota of remaining lines allowed to the debugging file has become negative System Action The current process is aborted P 4 1 2 Illegal input stream Message S10 has illegal value viz n Description 10 has been set to the value n which is either outside the range 1 3 or is associated with an input stream that was not specified in the call of ML I Note that this error may be caused by 23 the revert stream being set to an illegal value and end of file then being reached on another input stream System Action The current process is aborted P 4 1 3 Output error Message Error while writing to name file details Description An error has occurred while writing to the f
2. not followed by a macro name is suppressed If 3 is zero the initial value the message is produced If S4 is one the context print out normally given after a call of MCNOTE is suppressed If S4 is zero the context print out is given this is the initial setting Count of processing errors Not currently used Not currently used Not currently used Not currently used ML I User s Manual Appendix P Implementation on ICL 2900 under EMAS P 7 2 Use of S10 S23 10 Controls input selection a value of zero forces end of all input Values between 1 and 3 select the appropriate input stream other values cause an error The initial value of 10 is 1 S11 Not currently used 12 12 contains the quota of lines on the debugging file It is initially 500 and every time ML I outputs a line to the debugging file whether via an error message or a MCNOTE it decreases 12 by one If 12 ever becomes negative the process is aborted The user is at liberty to adjust the value of 12 at any time 13 Not currently used 14 Not currently used 15 Not currently used S16 Used to control character code translation Characters with the code given by 16 are translated to characters with the code given by 17 on input Initially 16 is 1 so no translations are performed 17 See 16 above 18 If 18 is one at the end of a process a list is given of all currently defined constructions This is output to the debuggi
3. 37 was to represent a tab ASCII 9 16 and S17 should be set in the following way MCSET 16 MCSET S17 37 9 Initially 16 has the value 1 which since it does not correspond to a valid ASCII code will not cause any translations to be made P 2 3 2 Ordering of input operations The ordering of input operations is as follows a Checking for 10 equal to zero b Checking for invalid values of 10 c Check for end of file if the revert stream is selected as a consequence of this check return to b d Translation using 16 and S17 e Checking for illegal characters P 2 4 Control of output Output may be directed to either both or neither of output and output2 The values of S21 and 22 control the selection 21 controls output1 and 22 controls output2 In both cases a value of zero means that no output is to take place and a value of one means that output is to take place There is no restriction on the length of an output line although the communications network will insert extra newlines into over long lines sent to terminals P 2 5 Control of listing A listing of the output from ML I may be directed to the listing file specified in the call of ML I Listing is controlled by the value of 20 If 20 is zero no listing is produced at all If 20 is one a listing without line numbers is generated if 20 is two line numbers are included in the listing 20 has an initial value of zero P 2 6 Workspa
4. ML I User s Manual Appendix P Implementation on the ICL 2900 under EMAS R D Eager University of Kent at Canterbury June 1982 This implementation is based on version BJB of ML I Copyright 1982 R D Eager Permission is granted to copy and or modify this document for private use only Machine readable versions must not be placed on public web sites or FTP sites or otherwise made generally accessible in an electronic form Instead please provide a link to the original document on the official ML I web site http www ml1 org uk P 1 Restrictions and Additions This implementation of ML I contains all the features described in the ML I User s Manual 4th Edition August 1970 With reference to the earlier Editions of that Manual this implementation contains all the features described in the Fourth Edition plus New Features 1 to 4 as described in supplements to it In addition system variable five is used to maintain a count of processing errors P 2 Operating instructions and I O P 2 1 Access Before ML I may be used for the first time its object file must be inserted into a directory in the user s search list The simplest way of doing this is to type INSERT PUBLIC ML1 P 2 2 Parameters The call of ML I takes the form ML1 inputi input2 input3 outputi1 output2 listing debugfile Any of the parameters may be omitted From the above it can be seen that ML T has three possible input streams and tw
5. ce ML TI uses the standard compiler workfile for its workspace the size of this is expressed in kilobytes and may be checked and altered by using the Subsystem command OPTION The relevant keyword is INITWORKSIZE remember that changes in the size of this file do not take place until the nezt logon In practice this workfile is so enormous that it is unlikely that its size will need to be changed for ML T P 3 Character set The character set used by ML I is 7 bit Ascir codes from 0 to 127 decimal Tabs are accepted on input but are converted to multiple spaces on output tab stops are every 8 positions starting at columns 9 17 25 etc P 4 Error messages Error messages are output to the debugging file specified in the call of ML T this defaults to OUT With reference to Chapter 6 of the ML I User s Manual the number 2N the maximum number of characters in a piece of text inserted into an error message without truncating is 64 The error character is question mark 7 A count of processing errors i e occurrences of the word Errors s on the debugging file is maintained in 5 At the end of a process ML I checks this value if it is nonzero ML I sets the Subsystem return code to 1000 otherwise it is set to zero This allows job control programs to detect the success or otherwise of an ML I process An output lines limit is imposed on the debugging file to curb excessive output from a process that has gone
6. ile indicated by name the EMAS error message corresponding to the error is given by details System Action The current process is aborted P 5 Integer calculations The initial environment contains ten permanent variables all set to zero All integers in or derived from macro expressions should be less than 2147483647 in magnitude Overflow is not detected except in the case of division by zero and its effect is undefined P 6 Layout keywords The following are the layout keywords for this implementation SPACE NL TAB SL SPACES meaning a space meaning a newline meaning a tab meaning the imaginary startline character meaning a sequence of one or more spaces P 7 S variables There are 23 S variables 1 to 9 are independent of the implementation and are used to control and monitor ML T itself 10 to 23 are implementation dependent and are used to control input output etc If an S variable is set to any value other than those given below the effect is undefined except for invalid values of 10 which always cause the process to be terminated P 7 1 Use of S1 S9 S1 S2 S3 S4 S5 S6 S7 S8 s9 If S1 is one the imaginary startline character is inserted on input If 1 is zero no startlines are inserted this is the initial setting The current source text line number is held in 2 it may be changed at any time If 3 is one the error message normally generated if a warning marker is
7. ng file and is not subject to the quota of lines imposed by 12 If 18 is zero the list is not produced The initial value of 18 is zero in a foreground job and one in a background job 19 The current line number of the output text is held in 19 It may be changed if desired 20 The value of 20 controls output to the listing file See Section P 2 5 for details 21 The value of 21 controls output to the primary output stream see Section P 2 4 for details 22 The value of 22 controls output to the secondary output stream see Section P 2 4 for details 23 23 contains the current revert stream See Section P 2 3 for details
8. o possible output streams There is also a stream for listing the output of a process and a stream for debugging messages Any legal EMAS character file or member of a partitioned file may be specified as an input file IN and NULL are also accepted input defaults to IN there are no defaults for the other two input streams All output files must be different and they must also be different from any of the input files except for NULL Any legal EMAS filename may be specified for an output file though not a member of a partitioned file and the suffix MOD may be used to append to a file creating it if it does not exist Output device names e g OUT NULL LP PP etc are also permitted If output1 is omitted it defaults to OUT there is no default for output2 If listing is omitted no listing file is generated If debugfile is omitted OUT is used for the debugging file P 2 2 1 Example calls 1 To run ML I with just input from and output to the terminal the only command needed is ML1 This is sufficient for working through the Simple Introductory Guide 2 To run with two input files called PIG and DOG and output to FOO with listing to LP ML1 PIG DOG FOO LP ML I User s Manual Appendix P Implementation on ICL 2900 under EMAS P 2 3 Control of input Input may be taken from any one of the input streams The value of 10 controls the selection The possible values are S10 1 input is taken fr
9. om input 10 2 input is taken from input2 10 3 input is taken from input3 If 10 is set to zero ML I treats this as end of file and ceases processing If 10 is set to any illegal value negative greater than three or a value between one and three associated with an input stream which has not been specified then the process is aborted If a change of input stream is made the original stream is not forgotten Any attempt to read from this stream again will cause ML I to carry on where it left off When the end of an input stream is reached ML I checks to see if it is the revert stream If it is the process is terminated otherwise input is switched to the revert stream and processing continues The revert stream is initially 1 its value is held in 23 and may be altered by the user if required There is no restriction on the length of an input line although the communications network will not handle long lines from terminals P 2 3 1 Input translation facility It is possible to designate that one character be translated to another on input This makes it possible to input a character that a device does not support e g a tab from an EMAS terminal However only one character code can be translated in this way If it is desired to perform a translation 16 should be set to the ASCII code of the character to be translated and 17 to the ASCII code of the character that is to replace it For example if ASCII
Download Pdf Manuals
Related Search
Related Contents
Outdoor Speed Dome Camera Accessories Camera TERMOCÁMARAS - Interempresas (1)見積書提出期間 平成26年 5月12日 ASUS CM6431 Owner's Manual ご注文の際は、注文コードをご記入ください。 operación - Lincoln Electric MODE D`EMPLOI - Canon Europe Les Cahiers de la Recherche - ORBi 52068459 PROLINE (PLI136G Copyright © All rights reserved.
Failed to retrieve file