British Computer Society Fortran Specialist Group
Minutes of the meeting held on Monday 4th April in lecture theatre 4.34,
Royal School of Mines, Imperial College Computer Centre, Prince Consort Road,
London SW7
Present: Mr M Lewis (Vice Chairman) Imperial College Computer Centre
Mr G Harding Imperial College Computer Centre
Mr D Hill C.C.A.
Mr D J Holmes Rolls Royce (1971) Ltd. Bristol
Dr J Murchland University College London
Mr T L van Raalte M.O.D. (A.W.R.E.)
Mr J Robert-Jones Liverpool City Council
Mr J D Wilson Leicester University
Mr P A Clark (Secretary) Rothamsted Experimental Station
1. Approval of Minutes of previous meeting
The minutes of the meeting of 7th February were approved.
2. Matters Arising from the Minutes
Mr Roberts-Jones initiated a discussion concerning Appendix A of the February
1977 minutes indicating that it was still not clear whether a file property was
indeed an intrinsic property of a file or not. Lines 137 to 148 of section 12
of document X3J3/76.7 (dated 15th March 1977) show that certainly with regard
to access method, which was the main discussion point, property implementation
is entirely processor dependent.
3. Election of Officers for 1977/78
Mr Muxworthy (Chairman) and Mr Clark (Secretary) both stood down from their
current positions. Dr J Murchland proposed a vote of thanks for their service
to the group over the last two years.
The elections for Chairman and Secretary then took place. Only one candidate
for each post was proposed and they were duly elected.
The new chairman is: Mr M R Lewis,
ICCC,
Mechanical Engineering Building,
Imperial College,
Exhibition Road.
London SW7 2BX
Tel: 01-589 5111 x 1186
The new secretary, to whom all
correspondence should be addressed is: Mr G L Harding
ICCC
Mechanical Engineering Building
Imperial College
Exhibition Road
London SW7 2BX
Tel: 01-589 5111 x 1187
Requests were made for anyone willing to fill the vacancy on the steering
committee. No one was forthcoming. will anyone willing to fill this please
contact the secretary.
4. Activities of other Fortran Groups
4.1 ANSI X3J3 Committee Activities
Two communications from Loren Meissner were presented. They were:-
i. "Significant Actions taken at the March 1977 meeting of X3J3."
ii."Proposals described in For-Word (Volume 3, Number 1. January 1977,
page 5) which were considered at the March 1977 meeting of X3J3."
Both of these are reproduced in Appendix A.
The brief nature of these notes gave rise to uncertainty as to the
meaning of the statement therein that nX does not affect the output record
length. There is some clarification in section 13 of document X3J3/76.7 in
lines 312 to 313 and 329 to 332. It is stated nX alone does not affect
the output record length but merely positions so that a subsequent output
item will actually cause the intervening blanks to be written.
X3J3 have produced a new document known as X3J3/76.7 that includes all
changes up to and including the March 7 1977 meeting. The document,
describing the Full FORTRAN 77 language, is an unofficial working document
and incorporates all changes resulting from public comments. The preface
to the document is reproduced in Appendix B.
4.2 Fortran Development Committee Activities
The January 1977 FOR-WORD newsletter (Volume 3, Number 1) had been
received and it included two pages for a summary of revisions to the
March 1975 X3J3 standard up to January 1977. Some of these such as the
Character length specification now have to be read in the light of the
latest document, as they have changed.
4.3 BSI DPS 13 WG2
The survey conducted by Dr Rutherford for BSI DPS13 had received about
forty replies.
Dr Rutherford has indicated that this response, while incomplete, shows
the existence of a requirement for standardisation. In all about 400
forms had been sent out.
Mr Clark reported that he had discussed possible proposals to make to
BSI DPS13 and in the absence of confirmation by members of the Fortran
Specialist Group, he decided that there were two separate issues. Firstly,
defining a 'real-time' Facility to which various general purpose application
programming languages could interface. Secondly, defining special purpose
languages for this area of activity and for writing the basic system
control functions.
The information now available was sufficient to put forward Fortran as
a suitable language for the former case. It was thought that perhaps
it was premature to make any entirely satisfactory recommendation for the
latter case.
Mr Clark described the general requirements of ISO for the standardisation
of Software and the scope of the ISO/TC97/SC5/WG1. In general it was
thought that the Fortran with ISA routines matched up to these specifications.
Dr Rutherford had decided to out these views to BSI DPS13 on the day after
this Fortran Meeting (i.e. on 5th April 1977).
4.3.1. ISA/Purdue Workshop Activities
The minutes of the 25th January 1977 meeting of ISA SP61 Committee
had been received and were described.
4.3.2. Codasyl Fortran DBMLC
A letter from Dr Chester Smith had been received. It mentions that
the document 'CODASYL FORTRAN data base Facility' is shortly to be
published by the Canadian Federal Government. The position on
publishing in Great Britain is being investigated.
5. Review of ISA S61.2
Mr Clark gave a review of ISA S61.2. This is reproduced as Appendix C to
these minutes.
Some comment evolved about DFILW and whether one should first have to open
the file with 'exclusive all' privilege.
A further proposal was mentioned from the table on page C-3, obtained by
removing XW.
6. Working Party Reports
6.1 Preprocessor W.P.
Dr Murchland said that he had received details of an interesting
preprocessor For structured Fortran called STRUFFOR from H. Kilov
(Riga, Latvian SSR) complete with documentation in Russian.
He described with slides some of the constructs employed - these
fall fairly well into line with western thinking in this area.
He reported that the documents of the Structured Fortran Survey had
been received from Dr Meissner.
He outlined a possible scheme for summarising such preprocessors
under headings of name, indexing terms, purpose, input language,
output language, implementation, documentation. author, available
details and information source.
7. Other Recent Fortran Events
7.1 Implementation Developments
The secretary asked for information about current and future developments
intended For Fortran compilers. Mr Lewis mentioned that CDC were
intending to release a compiler conforming to the new standard and also
that the University of Minnesota were also developing such a compiler
for CDC machines.
Mr Hill said that the ICL 2900 compiler contained some aspects cf the
new standard and that he believed ICL were interested in better user
features such as statement tracing.
The secretary would be pleased to receive information about Fortran
compilers, currently available or being developed, For both the old
and new standard with the aim of producing a document containing such
information for people wishing to use a Fortran compiler which may
have special characteristics.
7.2 Fortran Publications
The paper "A Fortranner's Lament: Comment on the Draft Proposed
ANS Fortran Standard" by S I Feldman published in ACM SIGPLAN Notices
December 1976 was mentioned.
8. BCS Business
8.1 Datafair
The group has been allocated a room from 4.15 to 4.45 on Wednesday
5th October. Any volunteers willing to talk on the new standard or
preprocessors would be welcome. Please contact the secretary.
8.2 BCS Standards Committee Meeting
Mr Shearing had been invited to this meeting on Thursday 31st March 1977
but had been unable to attend. In his place, Mr Clark had represented
the group. The two items of interest on the Agenda were
1. The Standards Committee had obtained copy of the ADPESO Fortran
(and Cobol) compiler tests. It was believed that these are a revised
U.S. Navy test suite covering an intersection of the old and proposed
new standards. The Standards Committee asked if the Fortran Specialist
Group could checkout these tests prior to their general release and any
comments made could be distributed with the tests.
2. The Standards Committee had noted in the FORWORD newsletter that
X3J3 was requesting new members and the committee decided to investigate
this possibility.
9. Any Other Business
There was no other business.
10. Date of Next Meeting
The next meeting will be held on Monday 16th May.
SIGNIFICANT ACTIONS TAKEN AT THE MARCH 1977 MEETING OF X3J3
Delete the MAXREC specifier from the OPEN and INQUIRE statements.
Add a BLANK specifier to the INQUIRE statement, to permit determination
of whether the currently established blank significance property is ZERO or
NULL.
Permit records written by a suitable explicit format to be read by list-
directed formatting.
Provide [UNIT =] * to specify the default input and output units for a
data transfer input or output statement with a control information list.
Make BLANK = NULL the default for a connection resulting from execution
of an OPEN statement that does not explicitly specify the blank significance
property.
Rescind the change adopted at the previous meeting (January 1977) that
changed the syntax of the CHARACTER declaration, IMPLICIT CHARACTER, and
CHARACTER FUNCTION statements, thus restoring the syntax to that of the March
l976 draft proposed standard.
Provide that a variable specified by a SAVE statement does not become
undefined when it has a statement label value.
Delete the concept that either part of a complex constant may be the sym-
bolic name of a constant. However, an entire complex constant may be symbolic.
Delete DBLE and DFLOAT as specific names of intrinsic functions;
introduce REAL as a specific name with integer argument and delete it with
complex argument; retain REAL as a generic intrinsic function name with
argument of any type.
Change format edit descriptors +nX and -nX to TRc and TLc, respectively,
and provide that nX docs not affect the output record length.
Permit an optional period before the T or F in a logical input field,
thus making the logical constant forms .TRUE. and .FALSE. also legal as input
data forms.
Require that any labelled common block for which SAVE is specified in any
program unit must also be so specified in every program unit in which it
appears.
Define SIGN (a1, a2) when a2 is zero as the absolute value of a1.
Permit a declared character length of (*) for a symbolic character
constant, with the actual length to be determined by the form of the constant.
Delete the edit descriptor Ew.dDe but retain Ew.dEe. [This merely means
that output with exponent size control will not be printed with a D before the
exponent.]
"It is the intent of X3J3 that all substantive issues are completed as a
result of the Public Review and Comment Period on /76, the draft proposal for
Fortran 77."
(11 Mar 1977)
Summary by L. P. Meissner
-----------
Proposals described in For-Word [Volume 3, Number 1, January 1977, page 5] which were
considered at the March 1977 meeting of X3J3:
Delete alternate return: Proposal 58-WB3 (Brainerd) to delete alternate return
was not formally considered. Instead, 58-JHlA (Harkins) to retain alternate return
was passed 16 - 9. Text based on 58-JHlB (Harkins) was adopted to correct the descrip-
tion of the alternate return feature.
Longer names: Several alternatives were suggested in proposal 58-BAMl (Martin).
Proposal 58-BAMlC (Martin) to permit 16 character names for variables, arrays, and
symbolic constants (but not for global names nor for statement functions, intrinsic
functions, and dummy procedures) was considered, but failed 7 - 16. Proposal 58-RFB6
(Brender) to add text to the Appendix recommending that "in no case should characters
in excess of some maximum count be accepted as valid but otherwise ignored" was
defeated 11 - ll.
MAP statement: The MAP statement was not considered.
Maximum record length for files connected for sequential access: Proposal
58-BP5 (Puerling) to permit sequentially connected files to have a RECL property to
specify maximum record lengths failed 4 - 15.
Array assignment: Proposal 58-JH2 (Harkins), with extensive modifications
including a prohibition against the use in the expression on the right of scalars or
other entities partially associated with the array on the left, failed 11 - ll.
Other substantive proposals considered but not adopted:
Prohibit OPEN on a unit that is already connected.
Change substring syntax to include angular brackets.
Restore adjustable character length for dummy arguments.
Rescind assumed length of dummy argument arrays.
Require DO variables and parameters to be of integer type.
Reconsider conversion rules for DATA statement.
Delete the assigned GO TO statement.
Add an intrinsic SIGNUM function. Note: one way to get this function, now that
SIGN has been defined when a2 = 0, is as follows:
SIGNUM (x) = SIGN (.5, x) - SIGN (.5, -x)
Document X3J3/76.7 FORTRAN 77 March 18, 1977
J. C. Noll
TO: X3J3
Document X3J3/76.7 includes all substantive and editorial
changes made to document X3J3/76, including changes made at
the March 7 1977 meeting of X3J3.
Document X3J3/76.7 FORTRAN 77 is an unofficial working
document of X3J3. Document X3J3/76 dpANS FORTRAN is a basis
document that was published in March 1976 for public review
and comment. Document X3J3/76.7 has revision bars which
indicate differences between /76.7 and /76.
X3J3 intends that /76.7 completes all substantive changes as
a result of public comments received. X3J3 intends to
complete editorial changes at the May 23, 1977 meeting, and
to approve and submit a new basis document to American
National Standards Committee X3 for letter ballot. Upon
completion of the X3 ballot, the proposed standard will be
forwarded to the American National Standards Institute for
approval as an American National Standard.
Comments on X3J3/76.7 or X3J3/76 may be sent to:
Lloyd W. Campbell
X3J3 Secretary
BRL-CSD Bldg. 328
Aberdeen Proving Ground, MD 21005
USA
HO-8223-JCN J. C. Noll
Att.
X3J3/76.7
[see also Appendix D]
SUMMARY OF THE WORK OF THE JOINT INTERNATIONAL PURDUE WORKSHOP
(IPW) FORTRAN COMMITTEE AND THE INSTRUMENT SOCIETY OF AMERICA
(ISA) COMMITTEE ON INDUSTRIAL FORTRAN
Draft Standard ISA S61.2 (1976) (first Drafted 1973)
Industrial Computer System Fortran Procedures For
* File Access
* Control of File Contention
The processor is expected to permit several programs to be
operating concurrentLy and these concurrent programs may share
resources. A fiLe can be a shared resource.
INTERFACES TO ACCESS FILES
Files may be created by the system or by a program.
Create a Named File
To establish (but not open) a named file
CALL CFILW( FILE, LREC, NREC, STATUS )
where FILL specifies the file either as an integer expression,
an integer array or as a procedure name
LREC is the number of integer storage units in each
record of the file
NREC is the number of records in the file
STATUS returns status (1 = created, 2 or greater = not
created)
Open A File (now covered By D.P. ANS Fortran in part)
Associates a specified logicaL unit with a named fiLe and
defines access privileges of the program to the file
CALL OPENW( UNIT, FILE, ACCESS, STATUS )
where FILE is as before
UNIT number is used to reference FILE
ACCESS is integer (1 = read only, 2 = shared, 3 =
exclusive write, 4 = exclusive all)
STATUS returns status (1 = opened, 2 or greater = not
opened)
Close A File (now Covered By D.p. ANS Fortran in part)
Terminates association between logical unit number and named file
CALL CLOSE( UNIT, STATUS )
where UNIT is as before
STATUS returns status (1 = closed, 2 or greater = not
closed)
Delete A File
To remove a fiLe from the file system
CALL DFILW( FILE, STATUS )
where FILE is as before
STATUS returns status (1 = deleted, 2 or greater = not
deleted)
Modify Access Privileges
Requests to change the calling program's access privilege to a
previousLy opened file without closing and re-opening the file
CALL MODAPW( UNIT, ACCESS, STATUS )
where UNIT and ACCESS are as before
STATUS returns status (1 = request granted, 2 or greater
= request fails and the previous access privilege
remains in force)
Direct Access Files
This is covered in more detail in the revised d.p. ANS Fortran.
Revised Access Privileges
Purdue Europe Proposal
PROGRAM 1 HAS
PR W RW UW
PR Y N N Y
PROGRAM 2 W N N N Y
WANTS RW N N N Y
UW Y Y Y Y
where PR is protected read
W is write only
RW is read/write
UW is unprotected write
S61.2 Proposal
PROGRAM 1 HAS
R S XW XA PR*
R Y Y Y N Y
PROGRAM 2 S Y Y N N N
WANTS XW Y N N N N
XA N N N N N
PR* Y N N N Y
where R is read only
S is shared
XW is exclusive write
XA is exclusive all
PR is protected read (*=new addition)
In the body of the table:
Y means yes, desired privilege granted
N means no, desired privilege not granted
TO: X3J3
From: British Computer Society Fortran Specialist Group
Date: 16th February, 1977.
Subject: Comments on Fortran 77 Full language X3J3/76.5 (76-11-30)
The following editorial points were noted at our meeting of
7th February, 1977.
1. The Group repeats its objection to the use of the
word 'redundant', applied to type specifications
in section 19-2 item (9). It is clear from
section 8.4 that 'duplicate' is intended.
2, The decisions taken on 'extended range of Do loops'
at the November 1976 meeting of X3J3 have not been
incorporated consistently in X3J3/76.5. In section
11.10.2, lines 350 - 351 contradict lines 361 - 364.
Comments on Fortran 77 March 25, 1977
To British Computer Society, and others:
Thank you for your comments. The errors that you noted above
have been fixed in the enclosed document. Point 1 ('redundant
type specifications') required a fix to Section 15 as well as to
Section 19.2.
Please keep your comments coming. They are welcome and helpful.
J. C. Noll
X3J3 International Representative