From: Eric S. Raymond Date: Mon, 28 Jun 2004 03:09:04 +0000 (+0000) Subject: Index up yo Identification (Card Format). X-Git-Tag: 1.0~13 X-Git-Url: http://thyrsus.com/gitweb/?a=commitdiff_plain;h=cd574dbd78e99284df218094a0e7e487b9c9e020;p=mad.git Index up yo Identification (Card Format). --- diff --git a/doc/mad-manual.xml b/doc/mad-manual.xml index 0464fcd..21568d8 100644 --- a/doc/mad-manual.xml +++ b/doc/mad-manual.xml @@ -1105,11 +1105,12 @@ x0, ε1, format of the input information is to be found in a block of storage labelled "CARD" whose values are set later in the program by a VECTOR VALUES statement. The vector CARD actually has as values the format -information in alphabetic form (sometimes called HOllerith, or -binary-coded decimal -(BCD)BCD form). The +information in alphabetic form (sometimes called Hollerith, or +binary-coded decimal (BCD) +BCD +Hollerith (BCD) form). The con­struction and analysis of format information is thoroughly -discussed in Chapter II. +discussed in Chapter II. @@ -1275,6 +1276,8 @@ the additional cards. Functions +Function Name + The name of a function consists of one to six letters or digits followed by a period "." which must be written. The first character of a function name must be a letter. If the function is @@ -1478,10 +1481,11 @@ otherwise indicated by parentheses. The kind of arithmetic performed on a constant, variable or function value is determined by its mode. There are five modes in MAD; floating point, integer, Boolean, statement label, and function -name. Floating point, integer, and Boolean constants were described -in . Alphabetic constants are assumed to -be of integer mode. describes how -the modes of variables and functions are specified. +name.Function Name Floating +point, integer, and Boolean constants were described in . Alphabetic constants are assumed to be of +integer mode. describes how the +modes of variables and functions are specified. If an expression consists entirely of one constant, one variable, or one function value, the mode is that of the constant, @@ -1595,7 +1599,8 @@ floating point mode if the expression were written: originally stated just to achieve the "truncation" effect. A statement label (appearing in the label field of a statement) -is a constant of statement label mode. A function name with no +is a constant of statement label mode. A function +nameFunction Name with no arguments (e.g. SIN.) is a constant of a function name mode. A single constant, variable, or function value of statement label (function name) mode is an expression of statement label (function name) mode. @@ -1831,7 +1836,8 @@ END OF CONDITIONAL The indentation of the statements between the conditional statements -is not required but contributes to the readability. +is not required but contributes to the readability. +Indentation of Statements CONTINUE Statement @@ -2183,6 +2189,8 @@ exhausted. Function return +FUNCTION RETURN Statement + FUNCTION RETURN &scriptN; @@ -2810,7 +2818,8 @@ case. Several specifications may be condensed into one larger one by the use of the character "/". Each appearance of "/" (except as part -of a Hollerith field-see ) indicates +of a Hollerith field-see ) +Hollerith (BCD) indicates that the specification of a new line (or card) is to be started with what follows. A pair "//" causes a blank line (or card), three "///" cause two blank lines (or cards), etc. Thus, the specification @@ -3081,8 +3090,9 @@ linkend='constants'/>Constants assigned statement label mode (see ). -A function name constant is assigned function name mode (see -). +A function nameFunction +Name constant is assigned function name mode +(see ). A vector appearing as the dimension vector of some arrayArray Variables in a @@ -3351,6 +3361,9 @@ vector, i.e., using linear subscripts) may be preset by a declaration of the following form: + +Hollerith (BCD) + (a) VECTOR VALUES &scriptV; = c0, c1, ... c&scriptL; @@ -3431,6 +3444,8 @@ III. EXTERNAL FUNCTION +Function Name + @@ -3565,6 +3580,8 @@ number to arguments in the definition. The general form of all function definition programs is as follows: +Function Return + INTERNAL FUNCTION (X) ENTRY TO COS. @@ -3603,8 +3620,9 @@ program. (In an external function definition this is also the last statement in the program.) An entry must provided for each function being defined, but several -functions may share any number of FUNCTION RETURN statements. An -entry statement merely marks a point of entry, and does not effect the +functions may share any number of FUNCTION RETURN statements. +Function Return +An entry statement merely marks a point of entry, and does not effect the sequence of computation in any way. The expression after the word "RETURN" indicates that on this return the value of the function is to be the value of that expression. This expression must agree in mode @@ -3678,12 +3696,13 @@ will usually occur with subscripts. defines a single-valued function of X, called INVSF.. Since no mode declaration is given it is assumed by the translator that X is floating point. The value of INVSF.(X) is computed by the use of a -compound conditional. If 0 < x ≤ 1, (statement G) then statement C -is executed, causing a return to the calling program with the value -1/x. If the condition 0 < x ≤ 1 is not true, then the condition X -> 1 is tested (statement H). If X > 1, statement D is executed. -Finally, if neither of the conditions 0 < x ≤ 1 or x > 1 is true, -then statement I finds that X ≤ 0 and statement E (the error +compound conditional. If 0 < x ≤ 1, (statement G) then +statement C is executed, causing a returnFunction +Return to the calling program with the value +1/x. If the condition 0 < x ≤ 1 is not true, then the condition +X > 1 is tested (statement H). If X > 1, statement D is executed. +Finally, if neither of the conditions 0 < x ≤ 1 or x > 1 is +true, then statement I finds that X ≤ 0 and statement E (the error return) is executed. If @@ -3717,6 +3736,7 @@ Statement control transfers to statement ER (and then going on to S). Note that the END OF FUNCTION statement will never be executed, but must be present in the definition. END OF FUNCTION Statement +Function Return @@ -4913,12 +4933,14 @@ exception of characters enclosed between "$" spaces are not relevant. (Spaces may not be relevant even if they are so enclosed (see section 2.15) on format specifications). -1.4 The identification information in cols. 73-80 is not used by the -computer for any purpose but printing during translation and is +1.4 The identification information in cols. 73-80 is not used by +the computer for any purpose but printing during translation and is arbitrary. Actually, it is good practice to use the first four of the available eight columns for the first four digits of the project number (i.e., for R10AN use R10A). Presumably, the last four would -contain some sequence code. +contain some sequence code.Identification (Card +Format) + Diagnostics @@ -5036,6 +5058,9 @@ DELTA, Z(10)...Z(20)). The calling sequence would be + +Hollerith (BCD) + It is important to notice that in this example, as well as in the first, the parametersⅆif executed as instructionsⅆwould produce no operation. @@ -5095,7 +5120,8 @@ BCD information to be written on tape. The arguments are: (1) location of the format specification, (2) tape number, and (3) a list of variables to be written. The WRITE BCD TAPE ... statement produces -a call for this subroutine. +a call for this subroutine. +Hollerith (BCD) @@ -6134,6 +6160,10 @@ example, if A is a 4 x 3 matrix (m = 4, n = 3) and b = 1, then V(1) = FORIteration Statement FOR VALUES OFIteration Statement Function ArgumentsArguments of Functions +Function StatementExecute Statement +Function ValueValue of a Function +Hierarchy of ParrenthesesParentheses +