BRITISH COMPUTER SOCIETY FORTRAN SPECIALIST GROUP


Minutes of a meeting held on

Friday, 15th March 1974 at

BCS Headquarters, 29 Portland

Place, London W1 at 10.30 am.


Present:    Mr B.H. Shearing (Chairman)     Alcock Shearing & Partners

Mrs E. Aylmer~Kelly             University of York

Mr B.J. Banes                   Rolls Royce, Bristol Engine Division

Mr E.O. Bodger                  IBM, W.T. Systems Aid Centre

Mr P.A. Clarke                  Rothamsted Experimental Station

Mr J.C. Cullen                  B.P.

Dr A.C. Day                     University College, London

Mr M. Fitzsimmons

Mr J.S. Gatehouse               ICL, Putney

Mr I.D. Hill                    MRC Computer Unit

Mr J.P. Holland                 Tunnel Cement Ltd

Mr P. Kraven                    Seismograph Services Ltd

Mr D.J. Maisey                  ICL, Bracknell

Dr C.B.A. Price                 Honeywell I.S. Ltd

Mr K. St Pier                   G.E.C.

Mr D.M. Scales                  Seismograph Services Ltd

Mr T.L. van Raalte              A.W.R.E. Aldermaston

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


Apologies   Mr P.D. Bond                    Philips Industries

for Absence: Mr A. Bruce                    G.C.H.Q.

ACTION


1.    APPROVAL OF        The minutes of the meeting of 8th February 1974 were

MINUTES            approved subject to two corrections: (1) at section

36, Mr Hill had received a reply, Mr Parker had not,

and (2) at section 12, the date of the next meeting

should have read March 15, 1974.


2.    MATTERS ARISING    a.    It was becoming clear that the size of the draft

FROM THE                 American Standard for Fortran (ca. 150 A4 pages)

MINUTES                  would probably prevent its appearance in any

journal. The ANSI Fortran committee X3J3 expected

that it would be published separately and be made

available for a nominal fee. The publication date

was estimated to be January 1975.


The Secretary was to enquire whether it would be     DTM

advantageous to print copies from microfilm in

Britain, with the help of the BCS.


b.    On behalf of the Group, Mr Hill had written to

Mr Shepherd concerning Computer Journal Algorithm

78; no reply had been received- Mr Shearing asked

all members to pursue cases where illegal or bad

code was published as Fortran.

c.    Mr Banes was testing two compilers, a KDF9

Whetstone one and the DEC-10 F10 compiler with the

original U.S. Navy compiler testing programs. His

report would be available to this Group.


d.    Specialist Groups were able to continue to meet at

BCS Headquarters during normal office hours.


3.    CHAIRMAN'S         Mr Shearing drew attention to the IFIP congress and

REMARKS            MEDINFO conference; both to be held in Stockholm on

August 5-10, 1974, and to special travel arrangements

for these events. He also drew attention to the BCS

pamphlet, "Aims and Activities".


4.    PARTICIPATION      There was some discussion on whether the Group should

IN EUROCOMP        produce a static display at Eurocomp, to be held at

Brunel University on May 13-17, 1974. A subcommittee

was formed with the responsibility of making the deci-

sion and producing the display, if appropriate; the

subcommittee consisted of Mr Bodger with the Chairman

and Secretary.


(At a meeting later in the day the subcommittee

decided not to proceed with the display because of

the limited resources and time at their disposal.

It was decided that a more effective way of publi-

cizing Fortran activities would be to produce a series

of articles for "Computing".)


5.    BSI FORTRAN       There had been no technical BSI Fortran activity since

ACTIVITIES        the previous report to the Group. The ISO Fortran

meeting in May 1974, mentioned in the previous Group

minutes, would not take place; the next meeting of

ISO/TC97/SC5 was to be early in 1975.


Clarification of the position of the BSI Programming

Languages Committee, DPE/13, had been sought from

Mrs Leach, Deputy Chairman of the BCS Standards

Committee and member with special responsibility for

DPE/13. She had replied that Mr Shearing had been

invited to join the BCS representatives on DPE/13 in

his own right and not as a replacement for Dr Day,

- that BCS representatives on BSI committees had to be

individual members of the Society and that nomination

of such representatives was by personal invitation

from the BCS Standards Committee. Dr Day had found

out from BSI that he was no longer on DPE/13 but still

had had no notification from BCS, a fact noted in the

Secretary's reply to Mrs Leach.


After some discussion it was decided that although

the order of and motivation behind events was open

to dispute, the final result was clear and the unhappy

episode should be regarded as closed with these two

actions:


a.    The Chairman should propose to the Technical Board   BHS

that nomination to BSI committees should always be,

"by invitation, with the advice of the relevant

specialist group if one exists".


b.    The Chairman should write informally to the Deputy   BHS

President of the BCS acquainting him with the

Group's view of the affair and pointing out that in

the opinion of the Group official notification of

Dr Day's ceasing to be a DPE/13 member should be

sent to him, and further that Dr Day had been dealt

with disrespectfully and that an apology was due to

him.


6.    ECMA FORTRAN       Mr Maisey said that the ECMA Fortran Committee TC8

STANDARD           had sent a proposal on the EXTERNAL statement to

ACTIVITIES         X3J3, and that input-output was to be considered at

the next meeting. The general view of TC8 was that

X3J3 were placing too great an emphasis on retaining

compatibility with the 1966 American Standard and

that a desirable level for a new (ECMA) standard was

part way between the 1966 Standard and the current

X3J3 proposals.


ECMA had recently produced a booklet describing

their activities; it was noted that IBM were

active on some ECMA committees but not on the

Fortran one.


7.    MULTINATIONAL      Mr Gatehouse pointed out that the Multinational Data

DATA STANDARD      Fortran Standard (cf. minutes of 9.11.73, section 9)

was not a standard, but was a working document

designed for implementors and was available on

request. Concern was expressed that the treatment

of local variables in subroutines described by this

document followed the ICL 1900 implementation rules

and might thus be incompatible with the new

American Standard and would be excessively ineffi-

cient in a virtual system


8.    EDUCATIONAL       There was approval for a proposal by the Chairman

PROGRAMME         that at the next meeting the entire set of X3J3

proposals be considered in outline and that at

subsequent meetings up to the publication of the

draft American Standard there should be detailed

presentations and discussion of particular groups

of proposals. Full day meetings could be held

if necessary. This would enable members to be

able to comment more knowledgeably when the draft

was open for public review.


9.    DEPUTY            The Chairman again appealed (cf minutes of 18.5.73,

CHAIRMAN          section 3) for a volunteer for the office of deputy

chairman. It was desirable, but not necessary,

that he or she be a BCS member.


10.   ANSI FORTRAN       The minutes of the X3J3 meeting of January 14-17,

1974 were considered. The principal decisions

then taken were:


a.    To remove the requirement for at least one

executable statement in main programs and sub-

routines.


b.    To change some keywords in the INQUIRE statement.


c.    To allow keyword specifications (UNIT=, COUNT=,

ERR=) as appropriate in the auxiliary input/

output statements (BACKSPACE, BACKFILE, SKIPFILE,

REWIND, ENDFILE).


d.    To allow, at the implementor's discretion, the

form r*c in list directed output.


e.    To allow PARAMETER statements to precede IMPLICIT

statements (cf. minutes of 9.11.73, Appendix A

item 4).


f.    To specify the array facilities in subsets level

1 and 2.


Comments on these topics and on FORTREV (the X3J3

working document) were sent to X3J3 and are shown in

Appendix A to these minutes.


11.   DATE OF NEXT       The next meeting will be held on Friday, 3 May 1974

MEETING            at 10.30 am in the Library, Royal Society of Tropical

Hygiene and Medicine, 26 Portland Place, London W1.

The change of venue is because the usual meeting room

is not available on that day. The meeting will end

by 1.00 pm.




Program Library Unit page heading

DTM/PLU/1298


21 March 1974

APPENDIX A

To:  X3J3

From:  David Muxworthy, for BCS Fortran Specialist Group

Subject:  Comments on X3J3/49


1.    (/49,4.2) INQUIRE Statement


There is still considerable dislike for the syntax in which variables

to the right of an equals sign are assigned values, whereas elsewhere in

the language assignment is to variables on the left of an equals sign.

Further, the two different concepts are mixed in the same statement, e.g.

in

INQUIRE(FILE=C,NUMBER=I)


C is defined before execution of the statements, I is defined by the state-

ment. We suggest two independent changes to the syntax.


a.    Use the equals sign, as now, where information is input to the statement,

and use a different operator where entities are defined by the statement,

e.g.

   INQUIRE (UNIT=I,NAME:N,EXIST:E)

or INQUIRE (FILE=F,NUMBER ->I)


This would allow UNIT= and UNIT: and remove the need for NUMBER as a

keyword; similarly for FILE,NAME with slight amendment to definition

of fn(FORTREV 12.11.3.3).


b.    Separate the 'input' to the statement by parentheses, e.g.


INQUIRE(UNIT=I),NAME=N

INQUIRE(FILE=F),NUMBER=I


For inquire by unit, this allows the simple numeric (1966-like) form


INQUIRE(I) NAME=N

   or INQUIRE(I) NAME:N


2.    (/49,4.2) INQUIRE Statement


We would point out that the work is often spelt 'enquire', at least in

Britain and Australia, although dictionaries give 'inquire' as the major

spelling and show that there is a tendency for 'enquire' to mean ask and

'inquire' to mean investigate. Any confusion would be avoided by using

another word; we suggest INSPECT or QUERY.


3.    (/49,4.3) List-directed I/O


We are indifferent as to whether repeated constants are output separately

or in the r*c form but we do not wish the implementor to have the choice;

the Standard should specify the form of output.


4.    (FORTREV(74-02-06) 12.2.2) File names, subsetting.

The facility of named files should always be available at the top level

of Fortran. Section 12.2.2 could remain as it is for levels 1 and 2 but

for level 3 it should read:


A file may or may not have a name. The name of a named file is a

character string. The class of allowable names is processor

dependent but must include the set of Fortran symbolic names (2.3.1).


5.    (FORTREV(74-02-06) 12.6.3.1) Array block syntax


The array block syntax would be more consistent if it were changed thus:


Old                        New


a1:a2                                a(i1:i2)


a1:                        a(i1:)


:a2                                 a(:i2)


The new notation is analogous to a substring reference (6.2.2.2.1); in the

first of the three cases it removes the need to write the array name twice

and hence removes the possible error of the array names being different.

The present X3J3 proposal is already different from the IBM implementation.




APPENDIX B


X3J3 EXTENSIONS AND REVISIONS APPROVED (AT JANUARY 17, 1974)


GROUP X3J31


  1.        INCLUDE APOSTROPHE IN CHARACTER SET. (/21,4.1)

  4.        REMOVE CONCEPT OF SECOND LEVEL DEFINITION. (/24,4.1)

 32.        ALLOW PROGRAM STATEMENT. (/31,4.1)

 72.        ALLOW NONFORTRAN CHARS. ON COMMENT LINES. (/36,4.3)

 86.        INCLUDE PUBLISHED CLARIFICATIONS, MAY 69 AND OCT 71. (/39,4.6)

 95.        SUGGEST IDENTIFICATION OF NONSTANDARD EXTENSIONS. (/39,4.16)

103.        RESTRICT USAGE OF MAIN AND BLOCK DATA NAMS. (/4O,4.8)

116.        RESTRICT USE OF BLOCK DATA AND PROGRAM NAMES. (/42,4.8)

126.        ALLOW ENTRY AND FORMAT STATS. BEFORE IMPLICIT STAT. (/45,4.2)

129.        ADD COLON, <, AND > CHARS. TO CHARACTER SET. (/45,4.5)

147.        PROGRAM UNIT NOT REQUIRED TO HAVE ONE EXEC. STAT. (/49,4.1)


GROUP X3J32


  5.        ALLOW APOSTROPHES To DELIMIT HOLLERITH STRINGS. (/24,4.2)

            RESCINDED. (/43,4.1)

 22.        ALLOW ALL TYPES OF ARITHMETIC ASSIGNMENT STATEMENTS. (/29,4.1)

 38.        RIGHT TO LEFT GROUPING 0F SUCCESSIVE EXPONENTIATIONS. (/31,4.9)

 39.        LEFT TO RIGHT EVALUATION OF soME EXPRESSIONS. (/31,4.9)

 41.        ALLOW GENERALIZED SUBSCRIPT EXPRESSIONS. (/33,4.2)

 42.        ALLOW SEVEN DIMENSIONS. (/33,4.3)

 45.         ALLOW A COMPLEX NO. TO BE EQUIV. TO TWO REAL NOS. (/33,4.6)

 46.        ALLOW ADJUSTABLE DIMENSION VALUES TO BE IN COMMON. (/33,4.7)

 47.        ALLOW ADJ. DIM. VALUES TO BE CHANGED WITHIN A SUBPROGRAM

            WITHOUT AFFECTING ARRAY SIZE. (/33,4.8)

 48.        ALLOW INTEGER EXPRESSIONS As ADJ. DIMENSIONs. (/33,4.9)

 49.        ALLOW NON-UNITY LOWER BOUNDS FOR ARRAY DIMENSIONS. (/33,4.10)

 56.        ALLOW (-*) NOTATION FOR REVERSE CROSS-SECTION. (/34,4.7)

 57.        ALLOW SUBARRAY STAT. WITH BY CLAUSE. (/34,4.8)

            RESCINDED. (/42,4.2)

 67.        CHARACTER DATA TYPE. (/35.4.1)

 75.        SPECIFY.SYNTAX AND OTHER CLARIFICATIONS FOR CHARACTER

            DATA TYPE. (/36,4.5)

 76.        ALLOW EXTRA DIGITS ON REAL, DOUBLE, AND COMPLEX CONSTANTS

            AND INPUT DATA. (/36,4.6)

 87.        ALLOW MIXED DATA TYPES IN EXPRESSIONS. (/39,4.7)

113.        MIXED TYPE EXPONENTIATION AND RELATIONAL EXPRESSIONS. (/42,4.5)

114.        ALLOW INTEGER EXPRESSIONS IN ACTUAL ARRAY DECLARATORS. (/42,4.6)

115.        PROHIBIT NULL CHARACTER CONSTANTS. (/42,4.7)

120.        RESCIND HOLLERITH DATA DELIMITED BY APOSTROPHES. (/43,4.1)

130.        USE COLON IN ARRAY DECL., SUBSTRING REF., ARRAY BLK. (/45,4.6)

131.        USE // FOR CONCATENATION OPERATOR. (/45,4.7)

132.        RESTRICT USE OF COMPLEX IN INTEGER-VALUED EXPRS. (/45,4.8)

139.        TYPED GENERIC NAME LOSES GENERIC IN PROG. UNIT. (/46,4.7)

140.        ALLOW ARRAY CROSS-SECTIONS WITH SUBSTRING REFERENCE. (/46,4.8)

145.        DISALLOW MORE PRECISE EXPRESSION EvALUATIoN. (/47,4.3)


GROUP X3J33


  2.        ALLOW DECIMAL DIGITS IN STOP AND PAUSE. (/21,4.2)

  3.        MAKE CHARS. IN STOP STAT. ACCESSIBLE. (/21,4.3)

  7.        ALLOW APOSTROPHE TO DELIMIT CHAR. STRING IN PAUSE. (/24,4.5)

  9.        ALLOW INTEGER EXPRESSION IN COMPUTED GOTO. (/25,4.1)

 10.        WHEN COMPUTED GOTO EXPR. IS OUT OF RANGE, EXECUTE

            FOLLOWING STATEMENT NEXT. (/25,4.1)

 11.        ALLOW AS TERMINAL STAT. OF DO LOOP ANY EXEC. STAT. THAT

            ALLOWS EXECUTION OF THE FOLLOWING STAT. (/25,4.2)

 12.        REQUIRE ASSIGN STAT. AND ASSOCIATED ASSIGNED GOTO STAT.

            TO BE IN SAME PROGRAM UNIT. (/25.4.3)

 13.        ALLOW ASSIGN STAT. TO SET VAR. FORMAT. (/25,4.4)

 14.        FIX NO. OF RANGE EXECUTIONS AND INCR. AT DO STAT. (/25,4.5)

 15.        ALLOW NEG. VALUES IN DO PARAMETERS. (/25,4.5)

 16.        ALLOW REDEF. OF DO PARAMETERS WITH NO EFFECT ON NO.

            OF ITERATIONS. (/25,4.5)

 18.        OPTIONAL COMMA IN COMPUTED AND ASSIGNED GOTO. (/27,4.4)

 19.        OPTIONAL LIST IN ASSIGNED GOTO. (/27,4.5)

 20.        OPTIONAL COMMA IN DO AFTER STAT. LABEL. (/27,4.6)

 23.        ALLOW INTEGER EXPRESSIONS IN DO STATEMENTS. (/29,4.2)

 27.        ALLOW IMPLICIT STATEMENT. (/3O,4.2)

 28.        ALLOW REAL AND DOUBLE PREC. DO CONTROL VARS. (/30,4.3)

 29.        ALLOW ANY ARITH. EXPR. IN DO PARAMETERS WITH CONVERSION

            TO CONTROL VAR. TYPE BEFORE USE. (/30.4.4)

 30.        ALLOW BRANCHING INT0 RANGE OF ANY ACTIVE DO. (/30,4.5)

 31.        MINIMUM DO ITERATION COUNT IS ZERO. (/30,4.6)

 50.        ALLOW ARRAY ASSIGNMENT STAT. WITH ANY ARITH. EXPR. (/33,4.11)

 52.        ALLOW ARRAY NAME WITHOUT SUBSCRIPT IN EQUIVALENCE. (34,4.3)

 58.        END ACTS LIKE STOP OR RETURN. (/34,4.9)

 65.        ALLOW A CONSTANT (PARAMETER) STATEMENT. (/34,4.15)

            CHANGED TO PARAMETER STATEMENT. (/37,4.1)

 68.        ALLOW IMPLIED DO IN DATA STATEMENT. (/35,4.2)

 69.        ALLOW ARRAY NAME WITHOUT SUBSCRIPT IN DATA STAT. (/35,4.3)

 77.        RESTRICT ARRAY ASSIGNMENT STATEMENT ON OVERLAP. (/36,4.7)

 80.        DEFINE DO CONTROL VAR. AT NORMAL COMPLETION OF LOOP. (/37,4.3)

 88.        REQUIRE COMPLETE SPECIFICATION BEFORE USE OF A VAR. (/39,4.8)

 90.        ALLOW FUNCTION AND ENTRY NAMES IN TYPE STAT. (/39,4.10)

 94.        DO NOT ALLOW COMPLEX DO PARAMETERS. (/39,4.15)

 99.        SAVE STATEMENT. (/40,4.4)

111.        NEW SYNTAX FOR PARAMETER STATEMENT. (/42,4.3)

112.        REMOVE DATA STAT. RESTRICTION ON HOLLERITH CONSTANTS. (/42,4.4)

127.        ALLOW SYMBOLIC NAME FOR EITHER PART OF COMPLEX CONST. (/45,4.3)

133.        ALLOW CHARACTER DATA IN BLANK COMMON. (/46,4.1)

134.        NO FUNCTIONS AND ARRAY ELS. IN LENGTH SPEC. (/46,4.2)

135.        RESTRICT IMPLICIT LENGTH SPEC. TO POS. INT. CONST. (/46,4.3)

136.        NO HOLLERITH DATA IN PARAMETER STATEMENT. (/46,4.4)

146.        RESCIND ARRAY CROSS-SECTIONS. (/47,4.4)

150.        ALLOW PARAMETER STAT. TO PRECEDE IMPLICIT STAT. (/49,4.4)


GROUP X3J34


  6.        ALLOW T FORMAT FIELD DESCRIPTOR. (/24,4.3 AND 4.4)

  8.        SPECIFY THAT CONSECUTIVE SLASHES IN FORMATS CAUSE

            BLANK LINES WHEN PRINTED. (/24,4.6)

 24.        REWIND HAS NO EFFECT AT INITIAL POSITION. (/29,4.3)

 25.        ALLOW END= IN READ STATEMENT. (/29,4.4)

 26.        ALLOW READ, PRINT AND PUNCH STATEMENTS. (/30,4.1)

            RESCINDED PUNCH STATEMENT. (/43,4.2)

 33.        ALLOW MANY LEVELS OF PARENTHESES IN FORMATS. (/31,4.2)

 34.        FORMAT CHAR. TO STOP FORMAT SCAN AT END OF LIST. (/31,4.3)

 35.        ALLOW EXPRESSIONS IN OUTPUT LISTS. (/31,4.4)

 36.        ALLOW QUOTED CHAR. CONSTANTS IN OUTPUT LISTS WITH A FIELD

            DESCRIPTOR. (/31,4.5)

 40.        ALLOW ERR= IN READ/WRITE STATEMENTS. (/33,4.1)

 44.        ALLOW MORE THAN ONE FILE ON ONE SEQUENTIAL I/O UNIT. (/33,4.5)

 51.        DIRECT ACCESS I/O WITH OPEN AND CLOSE. (/34,4.1, 4.2)

 59.        ALLOW -NX AND +NX FOR I/O RELATIVE TABBING. (/34,4.10)

 60.        ALLOW + SIGN ON SCALE FACTOR. (/34,4.10)

            RESTRICT SCALE FACTOR RANGE ON E,D,G OUTPUT. (/34,4.12)

 62.        PRINT ALL ASTERISKS WHEN NO. EXCEEDS FIELD. (/34,4.12)

 63.        ALLOW CONTROL OF EXPONENT SIZE ON E AND D OUTPUT. (/34,4.13)

 64.        MUST PRINT + SIGN ON POSITIVE OR ZERO EXPONENT. (/34,4.14)

 66.        ALLOW LIST-DIRECTED I/O. (/34,4.16)

 71.        ALLOW BLOCK I/O TRANSFER, E.G., A(I)...A(J). (/36,4.2)

 73.        ALLOW BACKFILE AND SKIPFILE STATEMENTS. (/36,4.4)

 74.        ALLOW BACKSPACE N RECORDS. (/36,4 4)

 79.        NOT ALLOW SIMPLE I/O LISTS ENCLOSED IN PARENTHESES. (/37,4.2)

 83.        ALLOW E AND F DESCRIPTORS WITH DOUBLE PREC. DATA. (/39,4.3)

 84.        ALLOW EW.DEE INSTEAD OF EW.D.E (/39,4.4)

            RESCIND DW.D.E AND ALLOW EW.DDE (/39,4.4)

 85.        GET ALL *'S IN OUTPUT FIELD IF EXPONENT IS TOO LONG. (/39,4.5)

 93.        REMOVE DELAYED DEFINITION OF ASSOC. INPUT ENTITIES. (/39,4.14)

 96.        DIRECT ACCESS I/O WITH OPEN AND CLOSE. (/40,4.1)

 97.        OPEN OPTION TO IGNORE INPUT BLANKS. (/40,4.2)

 98.        LIST-DIRECTED I/O. (/40,4.3)

100.        ZERO SUPPRESSION CONTROL WITH INTEGER OUTPUT. (/40,4.5)

101.        OUTPUT SIGN CONTROL, S FIELD DESCRIPTOR. (/40,4.6)

102.        REQUIRE NONZERO FORMAT GROUP REPEAT COUNT. (/4O,4.7)

106.        ALLOW EW.DEE AND EW.DDE WITH COMPLEX DATA. (/40,4.11)

107.        ALLOW DW.D WITH REAL AND COMPLEX DATA. (/40,4.12)

108.        ALLOW GW.D WITH DOUBLE PRECISION DATA. (/40,4.13)

109.        ALLOW PRINT(U,F) AND WRITE F STATEMENTS. (/40.4.14)

117.        CLARIFICATIONS OF IMPLIED-DO IN I/O LISTS. (/42,4.9)

118.        ALLOW P AS FIELD DESCRIPTOR. (/42,4.10)

119.        INPUT/OUTPUT CLARIFICATIONS. (/42,4.11)

121.        RESCIND PUNCH STATEMENT. (/43,4.2)

122.        INPUT/OUTPUT CLARIFICATIONS. (/43,4.3)

125.        INPUT/OUTPUT CLARIFICATIONS. (/45,4.1)

137.        REPEAT COUNT ON ONE LINE, REDUCE IT AT OUTPUT STAT. (/46,4.5)

138.        USE COLON AS FORMAT SCAN TERMINATOR CHARACTER. (/46,4.6)

143.        INPUT/OUTPUT CHANGES. (/47,4.1)

148.        I/O SYNTAX CHANGES (/49,4.2)

149.        ALLOW R*C FORM IN LIST-DIRECTED OUTPUT. (/49,4.3)


GROUP X3J35


 21.        ALLOW FUNCTIONS WITH NO ARGUMENTS. (/27,4.7)

 37.        ALLOW MORE BASIC EXT. AND INTRINSIC FUNCTIONS. (/31,4.6-4.8)

 43.        ALLOW ARRAY ELEMENTS IN STATEMENT FUNCTION DEFINITIONS. (/33,4.4)

 53.        SPECIFY UNITS OF ARGUMENTS AND RESULTS FOR BASIC

            EXTERNAL FUNCTIONS. (/34,4.4)

 54.        ALLOW NAMING OF BLOCK DATA SUBPROGRAMS. (/34,4.5)

 55.        ALLOW MORE THAN ONE BLOCK DATA SUBPROGRAM. (/34,4.6)

 70.        ALLOW ENTRY STATEMENT. (/36,4.1 AND /39,4.13)

 78.        ALLOW DPROD FUNCTION. (/36,4.8)

 81.        CLARIFICATIONS OF IMPLIED DO IN DATA STAT. (/39.4.1)

 82.        ALLOW EACH NAMED COMMON BLOCK IN ONLY ONE BLOCK DATA

            SUBPROGRAM. (/39,4.2)

 89.        FUNCTION TYPE CONV. IS SAME AS ACROSS = IN ASSIGNMENT

            STATEMENT. (/39,4.9)

 91.        ALLOW * IN EXTERNAL STAT. TO SPECIFY USER PROCEDURE. (/39,4.11)

 92.        ALLOW AUTOMATIC TYPING OF FUNCTION NAMES. (/39,4.12)

            NOTE.  /39,4.13 IS REAPPROVAL OF THE ENTRY STATEMENT.

104.        REMOVE DUPLICATE GENERIC FUNCTION NAMES. (/4O,4.9)

105.        REMOVE RESTRICTION ON DEF. OF DUM. ARG. WHEN ACTUAL ARG.

            IS IN COMMON IN REFERENCING PROGRAM ONLY. (/4O,4.10)

123.        NINT AND ANINT NEAREST INTEGER GENERIC FUNCTIONS. (/43,4.4)

124.        ALLOW CHARACTER FUNCTIONS. (/43,4.5)

128.        ADD LEN INTRINSIC FUNCTION. (/45,4.4)

141.        DO NOT REQUIRE ONE RETURN STAT. IN SUBPROGRAM. (/46,4.9)

142.        NO ENTRY NAME IN EXEC. STAT. BEFORE ENTRY STAT. (/46,4.10)

144.        ALLOW ENTRY NAME() AND FUNCTION NAME FORMS. (/47,4.2)


GROUP X3J36


151.        SUBSET RESTRICTIONS ON ARRAYS. (/49,4.5)