BRITSH COMPUTER SOCIETY FORTRAN SPECIALIST GROUP

 

MINUTES of a meeting held

on Thursday 21st September

1972 at B.C.S. Headquarters

29 Portland Place, London,

W1, at l0.30 am.

 

Present:    Mr J.S. Gatehouse (Chairman)                G.E.C.

Mr E.O. Bodger IBM Information Services Ltd.

Mr P.D. Bond Philips Industries

Mr R.L. Butchart D.T.I.

Mr J.C. Cullen B.P.

Dr A.C. Day University College London

Mr P.J. Hammond B.P.

Mr I.D. Hill M.R.C.

Mr J.P. Holland Tunnel Cement Ltd.

Mr I.D.K. Kelly Advanced Information Access Ltd.

            Mr D.J. Maisey I.C.L.

Mr C.K. Mackinnon U.K.A.E.A. Risley

Mr D. Winstanley University of Birmingham

Mr D.T. Muxworthy (Secretary) Edinburgh R.C.C.

 

Apologies

for

Absence:    Mr D.H. Marwick                  Heriot-Watt University

Mr K. St. Pier G.E.C.

Mr B.H. Shearing Alcock Shearing & Partners

 

 

  ACTION

l. ACTING SECRETARY     Mr Hill recorded the discussion for the first two-

thirds of the meeting as the secretary was late

due to public transport delays.

 

2. APPROVAL OF MINUTES  The minutes of the meeting of the 6th July

1972 were approved, subject to the amendment

of 'Bradley' to 'Bradly' in the list of those

present and of 'Lux' to 'LUCS' in section 4.e.

 

3. MATTERS ARISING FROM It was agreed that the Secretary should write to       DTM

   THE MINUTES          members of the Diagnostics working party to re-

commend that the working party be wound up unless

one of them is willing to act as chairman.

 

4. SOFTWARE 72          Mr Gatehouse reported briefly on his paper on

Fortran usage given at the Software 72 conference

at Canterbury in July: he had contrasted Fortran-

like and Cobol-like languages. Reaction from the

floor was that Fortran should develop so as to

resemble Algol more closely.

 

5. DATAFAIR 73          The organizers are planning that Specialist Group

sessions be held in rooms for 20 to 30 people.

The Chairman had indicated that this would be in-

sufficient.

 

The Extensions working party are to propose a         BHS

brief program for handling this Group's presenta-

tion.

 

6. WORKING PARTIES  a. Extensions Working Party. This working party

had not met since the previous Group meeting.

 

b. Free Format Working Party. Mr Marwick sent         DHM

his apologies and hoped to report to the next

meeting of the Group.


c. Small Machines Working Party. No information

was available.

 

7. COMPILER TESTING  Since the last meeting, the Chairman had been asked

if he was aware of any programs which would test

whether a given Fortran compiler conformed to the

ANSI Standard. Subsequent correspondence revealed

two such sets of programs, one collected by the

U.S. Navy under the direction of Commander Grace

Hopper and the other by the National Bureau of

Standards by Mrs F.E. Holberton, whose address is

National Bureau of Standards, Building 255, Room

B256, Gaithersburg, Md. 20234.

 

There was a suggestion that the Group compile a

document showing where compilers which claim to be

ANSI Standard compatible do not in fact conform to    All

the Standard, i.e. where they are sub-Standard.

All members of the Group are invited to send relevant

contributions to the Secretary, stating compiler,

version and manual reference, if available. (The

Secretary's address is Edinburgh Regional Computing

Centre, King's Buildings, Edinburgh EH9 3JZ).

 

Mr Kelly is to collate the information and the        IDKK

resulting document will be circulated to the Group

before it is decided whether to publish it.

 

8. COMPUTER BULLETIN  The Chairman is again to request the Editor of        JSG

the Computer Bulletin that the Group be given the

opportunity to respond to letters on Fortran matters

so that any reply may appear in the same issue as

the letter.

 

9. LANGUAGE             The Chairman summarized a letter on Fortran sub-

   CONTRACTIONS         setting from Mr Shearing to the Chairman of the

appropriate group of the ANSI X3J3 sub-committee;

this proposed semantic rather than syntactic sub-

setting. It was decided that there was sufficient

interest in this subject to form a "Language

Contractions" working party. Mr Gatehouse

volunteered to convene it and Messrs Bodger, Kelly

and Winstanley expressed interest in being members.   All

Any further members of the Group interested in

joining this working party should contact

Mr Gatehouse.

 

10. ALGORITHMS          A letter from the Editor of the Computer Journal

    SUPPLEMENT          Algorithms Supplement in reply to one from the

Secretary (ref. Minutes of 16 December 1971,

section 5a) and a statement of policy for the

Algorithms Supplement were discussed. A number of

detailed criticisms of the policy statement were

made and these were to be conveyed to Mr Shepherd

by the Secretary.                                      DTM

 

11. HIGH-LEVEL          It was reported on behalf of Mr R.E. Day that the

    LANGUAGE CON-       had budgeted for 250 people to attend

    FERENCE             this conference and only 100 had enrolled: members

were urged to support the conference.

 

12. ANSI X3J3 MEETING   The Secretary reported on the July ANSI X3J3

meeting which he attended as an observer. He had

been invited to give a short talk on the Group and

its views and received the impression that members

of X3J3 were well aware of the existence of the

Group and respected the quality of its work.

 

Although the major phase of work on the new Standard

is drawing to a close it was said that this Group

could continue to be of help (a) by submitting items

to fill any gaps or loop-holes in the current

proposals, and (b) by helping to check thoroughly

the new draft Standard when it appears. The method

of working of X3J3 is such that voting takes place

on proposals in everyday language and it is then

the task of a three-man sub-committee to transfer

the intentions of the full committee to a working

Standard. The Group hopes to arrange access to the

dp ANS for any member who is interested in helping

to check it.

 

13. DATE OF NEXT        The next meeting will be held on Thursday, December

    MEETING             7th, 1972 at 10.30 am in the Council Room, BCS

Headquarters.

lc


 

APPENDIX A

 

FRANK ENGEL: JR                           179 LEWIS ROAD (617) 484-5911

 

COMPUTER SPECIALIST       BELMONT. MASSACHUSETTS 02178

          August 1,1972 (rev. September 8, 1972)

[added by hand]

The following list of modifications to the ANS X3.9-1966 FORTRAN language have been

approved initially by the X3J3 committee of the American National Standards Institute.

This list has been prepared for informational purposes only, from the Minutes of X3J3.

It is not to be construed that any or all of these modifications will be incorporated in

the draft proposed American National Standard FORTRAN, or that if included, they

will be in exactly the form described, inasmuch as development work on the dpANS

FORTRAN is still in progress, and changes may also be introduced subsequently as the

result of critical review during the ANSI approval cycle. Appended to this list is a copy

of Appendix E of document X3J3/36, which contains all of the extension ideas which have

been proposed and considered by X3J3. Constructive comments on any or all of this

material will be welcomed by X3J3, and may be directed to the author, to BEMA, or to

any of the members of X3J3.

 

I.  Minor revisions and certification of common practice:

  1. Define effect of REWIND when unit at initial position.

  2. Require ASSIGN statement to be in same program unit as the assigned GO TO

or FORMAT statement to which it refers.

  3. Require consecutive slashes in format specification to cause printing of blank lines.

  4.  Allow an optional comma in assigned & computed GO TO statements and preceding

the control variable in DO statement.

 5. Allow in a comment line any characters capable of representation by the processor.

 6. Include the apostrophe ' in the FORTRAN character set.

 7. Allow Hollerith character strings to be delimited by apostrophes.

 8 Allow quoted character strings in PAUSE statements.

 9. Allow decimal digits in PAUSE & STOP statements.

10. Require characters in STOP statement be accessible.

11. Allow unlimited number of digits in real or double precision constant.

12. Require that the number of digits in an input datum under D, E, F, or G type con-

version is limited only by the field width w.

 

II.  Minor extensions to the language:

 1. Make optional the statement label list in the assigned GO TO statement.

 2. Allow the IMPLICIT statement.

 3. Allow as terminal statement of a DO-loop, any executable statement for which,

upon completion of its execution, execution of the next following statement may

take place.

 4. Allow READ, PRINT & PUNCH statements, with respective units processor defined.

 5. Allow many levels of parentheses in a format specification.

 6. Require printing of asterisks in entire field when value exceeds field width in

type Iw, or Fw.d conversion.

 7. Restrict scale factor nP in E & D output fields, such that -d n d+2.

 8. Allow optional + sign in scale factor in FORMAT statement.

 9. Allow ASSIGN statement to set the value of variable format reference in a for-

matted I/O statement.

10. Specify units of arguments and results for the Basic External Functions.

11. Allow a program statement in main program unit.

12. Allow naming of BLOCK DATA subprograms.

13. Allow more than one BLOCK DATA subprogram in an executable program.

14. Require END line to act as a STOP statement in a main program unit, and as

a RETURN statement in a subprogram.

15. Remove concept of second level definition.

 

III. General extensions to the language:

 1. Allow functions with no arguments to be defined and referenced. e.g. F()

 2. Extend the rules for assignment of e to v, Table I, to allow complex expressions

dwith real, double precision or integer entities, and vice versa.

 3. Require a complex entity to be equivalent to two type real entities, the first being

the real part and the second being the imaginary part of the complex number.

 4. Allow multiple assignment statements. e.g. vi ,v2 ,v3 . . . = e

 5. Specify right to left grouping of successive exponentiations, removing ambiguity.

A**B**C**D means A**(B**(C**D)).

 6.  Require left to right expression evaluation for operations of same hierarchic level.

 7. Allow mixed mode arithmetic expressions.

 8. Allow array to have maximum of seven dimensions.

 9. Allow implied-DO in DATA statement list.

10. Allow array name (sans subscript) in DATA statement list.

11. Allow array name in EQUIVALENCE statement.

12. Allow an array element name in a statement function expression.

13. Allow generalized subscript expressions.

14. Allow adjustable dimensions (i.e. variable names used as) in COMMON statement.

15.  Allow redefinition and/or undefinition of adjustable dimensions within a subprogram

unit without affecting the array dimensions.

16. Allow integer expressions as adjustable dimensions.

17. Require additional Basic External & Intrinsic Functions:

ASIN, DASIN, ACOS, DACOS, SINH, DSINH, COSH, DCOSH,

DTANH, TAN, DTAN, DINT, DFLOAT, DDIM, DPROD

18. Allow ERR= in READ/WRITE statements.

19. Allow END= in READ statement.

20. Allow more than one file to appear on one unit (sequential).

21. Allow list directed I/O.

22. Allow expressions in output lists.

23. Allow quoted character constant in output list of formatted WRITE statement,

with a corresponding Aw format field descriptor required.

24. Allow a designated character to stop scan of a format specification at the end

of an I/O list.

25. Allow -nX and +nX format field descriptors for relative tabbing, with implied

initialization of record to blanks on output.

26. Allow T format field descriptor for absolute tabbing, with implied initialization

27. Require processor to print + sign on positive or zero exponent in Ew.d field.

28. Allow control of exponent size on Ew.d.e & Dw.d.e conversion output.

29. Allow BACKFILE & SKIPFILE statements to position sequential unit.

30. Allow integer expressions in computed GO TO statement.

31. Require the execution of the next following statement, if the computed GO TO

expression is out of range.

32. Allow real or double precision type control variable in DO statement.

33. Allow any arithmetic expression in DO-parameter with appropriate conversion.

34. Allow negative values as DO-parameters.

35. Require determination of incrementation value and number of range executions

at start of execution of DO statement.

36. Require minimum number of DO iterations to be zero.

37. Allow redefinition and/or undefinition of DO parameter variables within range

without affecting number of iterations.-

38. Allow branching into the range of any active DO.

39. Allow a CONSTANT (PARAMETER) statement.

40. Allow an ENTRY statement in a subprogram.  [i.e. handwritten addition]

 

IV. Array extensions to the language:

 1. Allow non-unity lower bounds for an array dimension.

 2. Allow block transfer list item an I/O list.

 3. Allow an array cross-section reference and (-*) for a reverse cross-section.

 4. Allow a SUBARRAY statement.

 5. Allow array assignment statement with any arithmetic expression. An array

assignment statement is an assignment statement in which v is an array cross-

section. The expression e may or may not contain array cross-section ref-

ences.

 

V. Direct Access I/O extensions:

 1. Allow OPEN FILE and CLOSE FILE statements.

 2.  Allow direct access READ & WRITE statements, both formatted and unformatted.

 3. Allow direct access files to contain fixed length or variable length records.

 

VI. Character Data type extensions:

 1. Allow CHARACTER type specification statement.

 2. Allow character type constants.

 3. Allow character string references in both variables and array elements.

 4. Allow character type expressions in assignment statement, argument of

subprogram, and I/O lists. A concatenation operation is defined for character data.

 5. Allow character expressions as I/O unit, format reference in formatted READ/

WRITE statements.

 

VII. Binary Data type extensions*:

 

VIII. Subsets of the language:*

 

*NOT APPROVED BY FULL X3J3 COMMITTEE.

 


 

APPENDIX E   [i.e. appendix to X3J3/36]

 

ASSIGNMENTS

 

GROUP   AREA       MEMBERS

-----   ----       -------

 

 

1. PROGRAM FORM AND PROGRAMS,     LOVELL*, EATON, MULLINAX,

   FORMAT STATEMENT      FREEMAN, (ERIKSSON)

 

2. DATA TYPES, IDENTIFIERS    LAIRD*, GREENFIELD, ENGEL,

NOLL,YOUNG, SWAIN,

(GIBSON, INFANTE)

 

3. NONEXECUTABLE STATEMENTS,    HOLBERTON*, BOSWELL, VONDY,

   PROCEDURES AND SUBPROGRAMS,    (KLEIN, BARTH)

   INTER-INTRA PROGRAM

   RELATIONSHIPS

 

4. EXPRESSIONS      BAILEY*, INFANTE

 

5. EXECUTABLE STATEMENTS     KARP*, (EATON, INFANTE)

 

6. INPUT/OUTPUT EXCEPT FORMAT    BARTH*, CAMPBELL, GIBSON,

KLEIN, ERIKSSON,

ADAMS, (NOLL, FREEMAN,

MULLINAX, SWAIN)

 

7. SUBSETTING       SWAIN*, EARLEY, DALY, INFANTE

 

* DENOTES CHAIRMAN

  NAMES IN PARENTHESES INDICATE A SECONDARY RESPONSIBILITY.

  GROUP CORRESPONDENCE IS TO BE DISTRIBUTED TO THE COMMITTEE.

 

 

IDEAS FOR CONSIDERATION AS EXTENSIONS

----- --- ------------- -- ----------

STATUS CODE A=APPROVED        N=NOT RECOMMENDED

1=MUST BE IN STD  2=SHOULD BE IN STD

3=RECOMMENDED     4=OF SOME VALUE

5=OF TRIVIAL VALUE

 

NO.-GRP-STATUS    EXTENSION OR REVISION IDEA

--------------    --------------------------

 

 

GROUP 1 - PROGRAM FORMS AND FORMAT

 

 

 

 35-1

   

ALLOW ADDITIONAL FORMAT FIELD DESCRIPTORS, E.G., R AND T.

 

   

   /18-G10,/19-H,/24-M,N,/25-P20,P29,/31-N,/34-K5,X

 25-1-2

   

IGNORE TRAILING BLANKS IN INPUT DATA.

 

   

   /24-O,/25-J,/31-C,/34-L3,/35-N A

 84-1-2

   

IGNORE EMBEDDED BLANKS IN NUMERIC INPUT DATA.

 

   

   /24-R,/31-Q,/34-L3,/35-M

 59-1-3

   

EMBEDDED COMMENTS,

 

   

   /25-K,/30-V,/35-Z5

  5-1-N

   

SPECIFY A STATEMENT DELIMITER CHARACTER. ALLOW MORE THAN

 

   

ONE STATEMENT PER LINE.

 

   

   /25-K,/30-K,/34-L5,/35-Y1

 17-1-N

   

SPECIAL FORMAT DESCRIPTOR FOR VERTICAL SPACE CONTROL.

 

   

   /20-I,/27-M,/30-M

 43-1-N

   

EXPLICIT FORMAT DESCRIPTOR TO SPECIFY RESCAN POINT.

 

   

   /21-N,/27-N,/31-P,/35-Y1

 47-1-N

   

CONDITIONAL COMPILATION.

 

   

   /18-G8,/24-W,/25-G

 53-1-N

   

MACRO FACILITY.

 58-1-N

   

LOWER CASE ALPHABETICS.

 

   

   /31-O

 65-1-N

   

ALLOW COMMENTS BETWEEN CONTINUATION LINES.

 

   

   /34-ZB

 71-1-N

   

ALLOW PARENTHESES AS FIELD SEPARATORS IN FORMATS.

 74-1-N

   

BLANK INPUT FIELD DETECTION.

 

   

   /31-U

 83-1-N

   

COMPLEX FORMAT FIELD DESCRIPTOR.

 95-1-N

   

ALLOW G FORMAT DESCRIPTOR WITH ANY ARITH. VARIABLE.

 

   

   /25-O6,P18

 98-1-N

   

R FORMAT FIELD DESCRIPTOR,

 

   

   /25-P28,/30-Z,/34-K2

121-1-N

   

PICTORIAL FORMAT SPECIFICATIONS,

129-1-N

   

ALLOW ALPHANUMERIC STAT. LABELS.

133-1-N

   

SPECIFICATION OF INTEGERS IN FORMATS DURING EXECUTION.

 

   

   /31-S

144-1-N

   

DO NOT ALLOW NON-FORTRAN PROCEDURES IN STD PROGRAMS,

 

   

   /30-W

 16-1-A

   

PROGRAM STATEMENT TO IDENTIFY MAIN PROGRAMS.

 

   

   /30-Y,/31-ZL3

 57-1-A

   

ADDITIONAL SPECIAL CHARACTERS.

 

   

   /18-N,/21-G,/33-ZA,/34-H1,H3,J1,ZD

 86-1-A

   

ALLOW MORE PARENTHESE LEVELS IN FORMATS.

 

   

   /25-M2,/29-L

 96-1-A

   

X FORMAT DESCRIPTOR SKIPS CHARS. ON OUTPUT RATHER THAN

 

   

INSERT BLANKS (AT LEAST AFTER T IS USED TO REPEAT COLS.)

 

   

   /25-P1,/34-K1

100-1-A

   

SPECIFY ACTION IF OUTPUT NUMBER EXCEEDS FIELD WIDTH.

 

   

   /34-K4,L4,/35-Y1

109-1-A

   

PROVIDE NUMERIC OUTPUT FOR STD. INFO. INTERCHANGE.

 

   

   /20-H,/34-K5

117-1-A

   

ALLOW NON-FORTRAN CHARS. ON COMMENT LINES.

 

   

   /34-K6

118-1-A

   

MAKE END LINE A STATEMENT.

 

   

   /31-T

119-1-A

   

SPECIFY NPEW.D OUTPUT WHEN N>D.

 

   

   /33-X

161-1-A

   

ALLOW T FORMAT DESCRIPTOR.

 

   

   /24-M,/25-P20,/27-M,/31-N

 

   

 

 

   

 

 

   

GROUP 2 - DATA TYPES

 

   

 

 45-2-2

   

STATEMENT LABEL DATA TYPE.

 89-2-2

   

BINARY OR BOOLEAN DATA TYPE.

 

   

   /18-G8,/30-T,/31-ZE,/33-ZB,ZG,/35-R

128-2-2

   

CONSTANT AND INPUT VALUE OF IDENTICAL FORM MUST HAVE

 

   

SAME VALUE.

 

   

   /34-O

 34-2-4

   

ALLOW MORE PRECISE PRECISION REQUIREMENTS IN TYPE-STATEMENTS.

 39-2-4

   

SOME STANDARD WAY OF PACKING AND UNPACKING MORE THAN ONE

 

   

INTEGER VALUE IN ONE STORAGE UNIT.

 61-2-4

   

STRUCTURE DATA TYPE.

 69-2-4

   

ALLOW TWO STORAGE UNIT INTEGERS, ESP. IN COMMON.

 70-2-5

   

SPECIFY SOME PROCESSOR-DEFINED CONSTANTS, E.G. PI.

 

   

   /31-W,/32-P47

 81-2-5

   

ALLOW STATEMENT NOS. AS DATA, E.G. WITH TRAILING S.

 24-2-N

   

NAMES LONGER THAN SIX CHARACTERS.

 52-2-N

   

CLUSTER DATA,

 

   

   /17-M3

153-2-N

   

SPECIFY PARTS OF DOUBLE PREC. NO, IN STORAGE.

  2-2-A

   

APOSTROPHE AS HOLLERITH DELIMITER.

 

   

   /24-M,/25-P21

  6-2-A

   

HAVE HOLLERITH OR CHARACTER DATA TYPE, ALLOW HOLLERITH

 

   

CONSTANTS IN ASSIGNMENT AND IF STATEMENTS,

 

   

   /18-G5,G7,J,/21-G,L,/25-Q,/30-S,T,/31-ZC,ZC,ZE,ZF,

 

   

   /32-P32,/33-Y,ZB,/34-ZE,/35-N,O,P,Q,T2,Y1

  7-2-A

   

MORE THAN THREE DIMENSIONS.

 

   

   /33-U

 20-2-A

   

GENERALIZATION OF SUBSCRIPT EXPRESSIONS.

 

   

   /18-G4,/25-P25,/30-X,/31-L,ZL3,/33-U

 63-2-A

   

DELETE SECOND LEVEL DEFINITION.

 

   

   /24-ZD

 78-2-A

   

ALLOW SUBSCRIPT EXPRESSIONS LESS THAN ONE.

 

   

   /31-X,/33-T,U

124-2-A

   

DO NOT REFER TO A BLOCK NAME AS A DATA NAME IN STD.

132-2-A

   

SPECIFY PARTS OF COMPLEX NO, IN STORAGE.

 

   

   /31-M

154-2-A

   

ALLOW REAL CONSTANTS TO HAVE MORE DIGITS THAN A

 

   

PROCESSOR CAN USE.

 

   

   /30-ZA,/33-L

165-2-A

   

ALLOW INTEGER EXPRESSIONS IN ADJ. DIMENSIONS.

 

   

   /33-U

166-2-A

   

ALLOW VARS. IN COMMON TO BE USED FOR ADJ. DIMENSIONS.

 

   

   /33-U

167-2-A

   

ALLOW ADJ. DIMENSIONS TO VARY WITHIN SUBPROGRAM

 

   

WITHOUT CHANGING ARRAY PROPERTIES.

 

   

   /33-U

 

   

 

 

   

GROUP 3  NONEXECUTABLE STATEMENTS AND PROCEDURES

 

   

 

31-3

   

ADD SOME BASIC SUBROUTINE NAMES.

162-3

   

INCLUDE INNER PRODUCT FUNCTION.

 

   

   /31-ZK2,/33-ZN,/34-N3

112-3-1

   

ALLOW EQUIVALENCE TO GIVE TWO NAMES TO ONE VARIABLE.

 

   

   /18-G4

113-3-1

   

ALLOW SUBPROGRAMS TO RETAIN LOCAL VARS. BETWEEN REFS.

 

   

   /29-I,/31-Y,/34-C8,R2

125-3-1

   

COMBINE BASIC EXT. FUNS. AND INTRINSIC FUNS.

 

   

   /34-J14

137-3-1

   

ALLOW COMMON TO BE INITIALIZED IN ANY PROGRAM UNIT.

 

   

   /34-N2

  8-3-2

   

NONSTANDARD RETURN STATEMENT.

 

   

   /18-G10

 11-3-2

   

AUTOMATIC TYPING OF FUNCTION NAMES, I.E.,TYPE OF ARGUMENT

 

   

DETERMINES WHICH FUNCTION IS ACTUALLY USED.

 

   

   /30-J,/34-L1

 97-3-2

   

ALLOW FUNCTION NAME IN TYPE-STAT. WITHIN THAT FUN. SUBP.

 

   

   /25-P26

126-3-2

   

SPECIFY STATUS OF USER SUBP. WITH NAME OF BASIC EXT. FUN.

 

   

   /33-ZD,/34-J13,R1

131-3-2

   

REPEAT MORE THAN ONE CONSTANT IN DATA STATEMENT.

 

   

   /29-K1

 54-3-3

   

STORAGE CLASSES.

 

   

   /29-I,/31-Y,/34-Q8,R2

151-3-3

   

MAKE COMMA AFTER SLASH IN DATA STAT. OPTIONAL.

152-1-3

   

MAKE COMMA BETWEEN LISTS IN EQUIVALENCE STAT. OPTIONAL.

155-3-3

   

DEFINE SOME INTRINSIC FUNCTIONS FOR SOME MACHINE

 

   

DEPENDENT VALUES. (X3J3/30 APPENDIX ZA)

 

   

   /30-ZA,/32-P4,37-ZH2

156-3-3

   

DEFINE SIGNUM(X) FUNCTION TO PRODUCE +1.0 FOR X>0.,

 

   

0. FOR X=0., AND -1.0 FOR X<0.

 

   

   /30-ZA

 41-3-4

   

STANDARD OVERLAY OR SEGMENTATION SCHEME.

 

   

   /34-N5

104-3-4

   

ALLOW NO. OF CONSTS. TO DIFFER FROM NO. OF VARS.

 

   

IN DATA STATEMENT.

130-3-4

   

ADD MORE TRUNCATION AND REMAINDERING FUNCTIONS.

 

   

   /18-G6,G9,/34-L6,M9

134-3-4

   

ALLOW SUBP. REFS. TO USE LESS THAN NO. OF DUMMY ARGS.

 12-3-5

   

DATA IN TYPE STATEMENTS.

 66-3-5

   

ALLOW 'VAR.=CONSTANT' IN DATA STAT.

 22-3-N

   

INTERNAL SUBPROGRAMS.

 48-3-N

   

DEBUG FACILITIES.

 

   

   /32-P41

 76-3-N

   

ALLOW INITIALIZATION OF BLANK COMMON.

 82-3-N

   

DYNAMIC STORAGE ALLOCATION OF ARRAYS.

 

   

   /19-J5

105-3-N

   

MAKE MOD FUNCTIONS ALWAYS GIVE NON-NEGATIVE RESULTS.

 

   

   /25-P33

11l-3-N

   

ALLOW REFERENCING BEYOND DUMMY ARGUMENT ARRAY.

114-3-N

   

DO NOT REQUIRE LABELED COMMON BLOCKS TO BE SAME LENGTH.

135-3-N

   

ALLOW NAMELIST TO BE USED FOR A LIST OF ACTUAL ARGUMENTS.

160-3-N

   

ALLOW DUMMY ARG. TO BE EQUIVALENCED TO NONCOMMON

 

   

AND NONDUMMY ARG. ARRAY.

 

   

   /33-M

  4-3-A

   

MULTIPLE ENTRY SUBPROGRAMS.

 

   

   /18-G10,/19-I,/25-P30,/3l-I,/34-R3,/35-T1,V

 13-3-A

   

IMPLICIT STATEMENT.

 

   

   /25-P22,/29-J,/30-H

 27-3-A

   

IMPLIED DO LOOP IN DATA STATEMENT.

 

   

   /25-F1,/29-K2,/34-Tl

 28-3-A

   

ARRAY NAME WITHOUT SUBSCRIPT IN DATA STATEMENT.

 

   

   /25-M,P14,/29-K3,/34-T2

 30-3-A

   

EXPAND BASIC EXTERNAL FUNCTION LIST.

 

   

   /18-G6,G9,/30-J,/3l-H,/33-J2,ZE

 38-3-A

   

PARAMETER STATEMENT OR EQUIVALENT.

 

   

   /14-J7,/35-Z3

 67-3-A

   

ALLOW ARRAY NAME WITHOUT SUBSCRIPT IN EQUIVALENCE.

 

   

   /25-P17,/33-U

 77-3-A

   

SPECIFY UNITS OF STD. FUNCTION ARGS. AND RESULTS.

 

   

   /18-G7,/33-ZC,/35-Y2

107-3-A

   

ALLOW NAMING OF BLOCK DATA SUBPROGRAMS.

 

   

   /31-K,/34-J8

108-3-A

   

ALLOW MORE THAN ONE BLOCK DATA SUBP. IN ONE PROGRAM.

164-3-A

   

ALLOW FUNCTIONS WITH NO ARGUMENTS.

 

   

   /27-H

 

   

 

 

   

 

 

   

GROUP 4 - EXPRESSIONS

 

   

 

159-4

   

ALLOW LIMITED EXPRESSIONS IN DATA STATEMENTS.

 

   

   /30-ZA

163-4

   

SPECIFY SEQUENCE OF EVALUATION OF EXPRESSIONS.

 

   

   /30-N,P,Q,/31-V

  1-4-1

   

MIXED REAL-INTEGER ARITHMETIC.

 

   

   /30-Q,/31-V,/32-P26,/33-ZM

 90-4-1

   

MIXED REAL, INTEGER, AND DOUBLE PREC. ARITHMETIC.

 

   

   /25-P11,/30-Q,/31-V,/32-P26,/33-ZM

123-4-2

   

ADD < AND > TO CHARACTER SET AND ALLOW IN REL. EXPR.

 

   

   /33-ZA

149-4-2

   

ALLOW THREE NEW CHARACTERS FOR .AND.,.OR., AND .NOT.

 49-4-3

   

ERROR CONDITIONS IN COMPUTATIONS.

120-4-3

   

ALLOW CONTROL OF ROUNDING IN FL. PT. OPERATIONS.

 

   

   /24-G

136-4-3

   

MORE PERMISSIVE LOGICAL IF, E.G. IF(I.EQ.2.OR.3).

 

   

ALSO MORE PERMISSIVE LOGICAL EXPRESSIONS.

 

   

   /30-O,/33-ZO

 14-4-N

   

IMPLIED MULTIPLICATION AFTER A RIGHT PARENTHESIS.

 94-4-N

   

ALLOW MATRIX ARITHMETIC.

 

   

   /31-ZB,/33-J

 29-4-A

   

GROUP SUCCESSIVE EXPONENTIATIONS RIGHT TO LEFT.

 

   

   /24-X,/31-V

 87-4-A

   

ALLOW ARRAY ELEMENTS IN STATEMENT FUNCTION DEFINITION.

 

   

   /33-K

147-4-A

   

ALLOW SUBARRAY SPECIFICATION STATEMENT.

 

   

   /30-R,/31-J,/33-H,I,/34-M1,M4,Z

148-4-A

   

ALLOW ARRAY ARITHMETIC.

 

   

   /30-R,/31-J,/33-G,J,ZJ2,/34-J15,J16,/35-X3

 

   

 

 

   

 

 

   

GROUP 5 - EXECUTABLE STATEMENTS

 

   

 

145-5

   

DEFINE VALUE OF CONTROL VAR. AFTER SATISFYING DO LOOP.

 

   

   /24-L

 15-5-3

   

LOGICAL MASKING STATEMENTS.

 46-5-N

   

REPEAT STATEMENT.

 

   

   /29-Q

 50-5-N

   

ERROR HANDLING MECHANISMS.

 51-5-N

   

MULTI-TASKING FACILITIES.

 62-5-N

   

NULL STATEMENT LABELS. E.G. IN IF STATEMENTS.

 

   

   /18-G8

 68-5-N

   

ALLOW ASSIGNED GOTO IN DIFF. PROG. UNIT THAN ASSIGN.

 

   

   /25-H4

 79-5-N

   

ALLOW TWO STAT. NO. IF STATEMENT.

 88-5-N

   

DO NOT ALLOW EXTENDED RANGE.

 93-5-N

   

EXECUTE DO LOOP ONCE WHEN M1>M2.

 

   

   /25-P16

110-5-N

   

ALLOW MORE THAN ONE STAT. AS PART OF LOGICAL IF.

146-5-N

   

PROVIDE FOR INDICATING ABNORMAL TERMINATION OF A PROGRAM.

 

   

   /33-N

157-5-N

   

ONE STATEMENT TO INTERCHANGE TWO VALUES.

 

   

   /30-ZA

  3-5-A

   

MULTIPLE REPLACEMENT ASSIGNMENT STATEMENT.

 

   

   /18-G9,/21-K,/24-T,/25-H4,/27-G,/31-R,/32-P4O,/33-Z,ZH2

 32-5-A

   

GENERALIZE DO STATEMENT, I.E., ALLOW EXPRESSIONS

 

   

WITH ZERO AND NEGATIVE VALUES.

 

   

   /18-G6,/24-L,/25-H2,P15,/29-G2,/30-I,/31-ZL2,/35-U,X1

 55-6-A

   

BLOCK I/O TRANSFERS

 

   

   /25-N7,/33-P,/34-M7

 60-5-A

   

NOT RESTRICT STRINGS IN STOP AND PAUSE TO OCTAL DIGITS.

 

   

   /25-P23

 80-5-A

   

REDUCE RESTRICTIONS ON EXTENDED RANGE.

 

   

   /24-L,/29-G2,H,/30-I

 85-5-A

   

MAKE CHARS. IN STOP ACCESSIBLE.

 91-5-A

   

ALLOW ALL ARITH. TYPES OF ASSIGNMENT IN ARITHMETIC

 

   

ASSIGNMENT STATEMENT.

 

   

   /25-P12,/29-G1

 92-5-A

   

MAKE COMP. GOTO ACT LIKE CONTINUE WHEN VAR. OUT OF RANGE.

 

   

   /25-H1,P13

102-5-A

   

MAKE COMMA AND LIST OPTIONAL IN ASSIGNED GOTO.

 

   

   /18-G4,/27-J

103-5-A

   

ALLOW INTEGER EXPRESSION IN COMPUTED GOTO.

 

   

   /24-V,/25-H1

106-5-A

   

ALLOW OPTIONAL COMMA AFTER STAT. NO. IN DO STAT.

138-5-A

   

MAKE END LINE IMPLY A STOP IN MAIN PROGRAM.

 

   

   /29-G1

139-5-A

   

MAKE END LINE IMPLY A RETURN IN SUBPROGRAM.

 

   

   /29-G1

140-5-A

   

ALLOW BRANCHING INTO RANGE OF ANY UNSATISFIED DO.

 

   

   /24-L

141-5-A

   

ALLOW REAL NOS. AS PARAMETERS IN DO STATEMENT.

 

   

   /25-H2

 

   

 

 

   

 

 

   

GROUP 6 - I/O EXCEPT FORMAT

 

   

 

 99-6-2

   

SPECIFY ACTION FOR OMITTED FORMAT STATEMENT.

 

   

   /30-ZF,/33-ZJ

 36-6-3

   

DEFINE STANDARD INPUT DATA SENTINEL AND MAKE AVAILABLE

 

   

NUMBER OF NUMBERS AND/OR NUMBER OF LINES READ.

 72-6-3

   

ALLOW READING MORE CHARS. THAN WRITTEN, GET BLANKS.

 

   

   /24-P

115-6-3

   

DEFINE RECORD LENGTH.

 42-6-4

   

ABILITY TO READ TAPE RECORDS OF UNKNOWN MODE AND LENGTH.

 

   

   /24-S,/25-N5,/33-P,/34-P,/35-S

143-6-4

   

PROGRAM INTERLOCKS.

 

   

   /25-N

122-6-5

   

SPECIFY NORMAL SYSTEM I/O UNIT NUMBERS.

 21-6-N

   

NAMELIST STATEMENT.

 

   

   /34-J1O

 26-6-N

   

ALLOW HOLLERITH INFORMATION IN OUTPUT LISTS

 

   

WITHOUT ASSOCIATED FORMAT FIELD DESCRIPTOR.

 75-6-N

   

NEG. I/O UNIT IMPLIES BACKWARD OPERATION.

 

   

   /19-J2

116-6-N

   

PROVIDE FOR MULTI-REEL FILES.

127-6-N

   

GET CONVERSION WHEN VAR. TYPE AND FORMAT DISAGREE.

158-6-N

   

DEFINE INITIAL POSITION OF I/O UNITS.

 

   

   /30-ZA

  9-6-A

   

REREAD OR DECODE.

 

   

   /24-U,/33-Q,Y18,/35-N20

 10-6-A

   

ENCODE OR EQUIVALENT.

 

   

   /24-U,/33-R,Y18,/35-N20

 18-6-A

   

ERROR DETECTION ON READING.

 

   

   /24-I,/30-ZE,/33-V

 19-6-A

   

END FILE DETECTION ON READING.

 

   

   /24-T,/25-P24,/31-ZL1

 23-6-A

   

FREE FORMAT INPUT DATA, E.G., USE A COMMA AS FIELD DELIMITER.

 

   

   /18-G8,/33-ZI,/34-JZ

 33-6-A

   

ALLOW VARIABLE FORMAT STATEMENT LABELS IN I/O STATEMENTS,

 

   

E.G., ALLOW INTEGER VARIABLE NAME THAT HAS BEEN ASSIGNED

 

   

A STATEMENT LABEL 'VALUE' IN AN ASSIGN STATEMENT.

 

   

   /24-H

 40-6-A

   

DIRECT ACCESS I/O STATEMENTS.

 

   

   /19-J3,/25-N6,/30-ZB,ZC,/31-ZG,/33-S,/34-G,/35-K

 44-6-A

   

OPEN AND CLOSE FILES.

 

   

   /30-U,/32-P37,/33-S,/34-G,/35-K,Y2

 56-6-A

   

INCLUSION OF READ, PRINT, AND PUNCH STATEMENTS.

 

   

   /19-J4,/30-G

 64-6-A

   

ALLOW EXPRESSIONS IN OUTPUT LISTS.

 

   

   /24-K,/31-ZL3,/33-Z

 73-6-A

   

ALLOW CONSECUTIVE SLASHES TO CAUSE BLANK PRINT LINES.

 

   

   /24-Q

101-6-A

   

REWIND HAS NO EFFECT WHEN UNIT IS AT INITIAL POSITION.

142-6-A

   

ALLOW HOLLERITH CONSTANTS IN OUTPUT LISTS WITH

 

   

ASSOCIATED FORMAT FIELD DESCRIPTORS.

 

   

   /24-J

150-6-A

   

ALLOW MORE THAN ONE FILE ON ONE I/O UNIT.

 

   

   /33-W,/34-L7,/35-L