Minutes of BCS Fortran Specialist Group Meeting held at
BCS HQ on 6 October l988
Present: Miles Ellis - Oxford University
Tony Fitzpatrick - ECL
Bill Flexner - Retired
Mike Geary - NAG
E Golton - RAL
Dave Griffiths - SSF
Mike Gunn - University of Surrey
Valerie Harmer - University of Surrey
Carol Hewlett - LSE
Peter Holland - SS(E)L
Tao Lipinski - NAG
Mike Nunn - CCTA
Les Russell - AWE
Dave Vallance - University of Salford
John Wilson - Leicester University
John Young - MOD(PE)
l. APOLOGIES FOR ABSENCE
Apologies for absence were received from David Muxworthy, Lawrie
Schonfelder and John Reid.
2. MINUTES OF THE PREVIOUS MEETING [28 July 1988]
On page 2 fourth line from the bottom should end with Brian Meek and on
page 3 third line on Fortran Compilers on PCs Bath University should read CHEST.
Bath University is a Host Site for CHEST. There is also a group called NISS who
are similarly looking at compilers.
The correction of the item on the Closure of Deposit Account has been
held over to the next set of minutes.
3. MATTERS ARISING
Fortran Compilers on PCs.
CHEST is an evaluation group for Compilers set up on the initiative
of the IUSC. John Martin is the Chairman but he had not yet called a meeting.
The Chairman, John Wilson, would find out whether CHEST and the Group
could collaborate in this area. The Group would have to decide whether we should
validate Fortran compilers on PCs or just to test for quality. It was agreed that
initially information about compilers would be collected. There are wider issues
to consider than just validation. The IUSC had decided that there was no compiler
presently available suitable for University needs particularly in interfacing with
other software.
Mike Gunn had been sent information by Brian Meek which included an
article comparing 5 different compilers. Byte magazine also had an article
comparing two compilers.
Carol Hewlett pointed out that the NCC regularly publishes a list of
validated Fortran compilers. It was also pointed out that NAG has extensive
experience in using Fortran compilers.
It was agreed that the Group should go ahead and collect information
about Fortran compilers on PCs and that the Group would co-operate with IUSC.
It was then agreed to set up a sub-group initially to collect information
about Fortran Compilers on PCs. The sub-group will comprise Mike Gunn and John
Young. Any relevant information to be sent to Mike Gunn or to the Secretary.
A new Bulletin Board has been set up for the National Information Software
Service (NISS) by Mike Johnson of Bath University for information dissemination
throughout the Janet Network. It was felt that the Group could use this service
even though there were some initial teething problems.
4. REPORTS FROM X3J3 AND WG5 REPRESENTATIVES
The report of the X3J3 meeting in Jackson, Wyoming had been circulated
with the minutes as Appendix B. At that time there was no representative of the
Group who had attended that meeting so the Chairman presented his report on the
WG5 meeting in Paris.
[A more detailed report by John Wilson on the Paris WG5 meeting is available at
https://wg5-fortran.org/N001-N1100/N353.pdf]
Background
A meeting of the ISO Working Group responsible for Fortran standards,
officially known as ISO/IEC JTCI/SC22 WG5, was held in Paris from the l9 to the
23 September 1988. The main purpose of the meeting was to review the draft
proposal for Fortran 8X which had been produced by the ANSI X3J3 committee,
DPl539, and decide how to proceed to a Draft International Standard (DIS) taking
into account the comments made by the ISO member bodies during the public review.
The ISO member countries had voted as follows on accepting DPl539 in
its current form:
Yes 9 Austria, Belgium, Denmark, Finland, Hungary, Italy, Netherlands,
Sweden, USSR
No 7 Canada, China, France, Germany, Japan, UK, USA
Did not vote 4 Bulgaria, Czechoslovakia, Norway, Turkey
The UK and the USA had both voted No. It was noted that X3J3 had examined
all 400+ comments it had received on the proposal and had been unable to produce a
revised draft which satisfied its own criteria for a new standard. X3J3 has a
responsibility for producing both a US standard and an ISO standard, with the
intention that these be the same! The ISO Working Group is only concerned with an
ISO standard. It delegated the job of producing a DP to ANSI. Now that this has
been done, it is WG5's job to determine how to proceed.
Resolutions
WG5 passed a number of resolutions, the essence of which is as follows:
l. (Resolution P2)
DPl539 be revised in accordance with the editorial changes already
approved by X3J3 together with the following:
(a) remove the concept of deprecation
(b) remove RANGE/SET RANGE
(c) remove ALIAS/IDENTIFY
(d) remove specified REAL/COMPLEX precision (REAL(*,*)
(e) remove internal procedures
(f) remove E and 1 for array constructors
(g) add pointers and associated facilities
(h) add Military Standard bit intrinsic functions (with their MIL-STD
defined names)
(i) add significant blanks to free form source
(j) change host association to use association in module procedures and
remove host association
(k) add parameterization (KIND=n) to INTEGER
(l) add parameterization (KIND=n) to REAL/COMPLEX
(m) add parameterization (KIND=n) to CHARACTER so as to allow multiple
character set support
(n) add the INCLUDE statement
(o) remove user defined elemental functions
(p) remove the new form of the DATA statement
(q) change interface blocks (as defined in "/COMMON/ FORTRAN")
(r) change array constructor syntax to use I/O syntax
(s) remove parameter to derived types
(t) add stream I/O intrinsic functions
(u) add binary, octal and hexadecimal constants and edit descriptors
(v) add parameterized LOGICAL (KIND=n)
NB detailed text modifications for items (a) to (n) in DPl539 already exist.
2. (Resolution P4)
The name of the new language standard will be Fortran 88.
3. (Resolution P5)
A timetable and milestones have been adopted for processing the
standard such that a second ISO formal review period will have been
completed by July I989.
There were also a number of side issues not directly concerned with
the production of a new standard. One of these requests the BSI to
investigate the possibility of preparing a validation suite for Fortran
88 processors. Another requests the Salford University Alvey team to
test the sample program sections contained in the draft proposal and
report any suggested changes to WG5: Salford already have a nearly
working version of a Fortran 88 compiler.
Conclusions
Essentially these resolutions mean that WG5 has told X3J3 exactly what
it wants to happen and when. It is only concerned with an ISO standard: when one
emerges all member nations, and the EEC, have undertaken to adopt it as a national
standard.
It is hoped that X3J3 will accept the WG5 proposals and proceed accordingly;
If not WG5 will process the document itself. It is important to note that all
the resolutions were passed unanimously, or nearly so, by the member countries
and therefore carry a lot of weight. There is a possibility that X3J3 may propose
a subset standard in order to get agreement within the committee, particularly
from IBM and DEC. WG5 have indicated that they would, reluctantly, accept this
if it would keep ISO and ANSI together.
ISO Observer at X3J3
Those attending the ISO meeting in Paris agreed that it would be helpful
if one of their members who did not belong to X3J3 attended the next X3J3 meeting
in Boston to put forward the ISO proposals as an independent observer. This
independent observer would be Gerhard Schmidt (from Austria) and John Wilson
proposed that the Group would be prepared to help to sponsor Gerhard Schmidt to
attend the next X3J3 meeting. Mike Nunn suggested that £100 might be appropriate
in view of the number of European countries who were being approached for sponsor-
ship for an observer.
John Wilson then proposed the following resolution.
"The Fortran Specialist Group of the British Computer Society resolves
to sponsor Gerhard Schmidt for £lOO to attend the X3J3 meeting in
Boston in December 1988 as an independent observer to present the
ISO resolution for the implementation of the Fortran 88 standard".
When put to the vote this resolution was carried unanimously.
A full report by Miles Ellis on the Paris meeting (Appendix A) will be
circulated in a future mailing. John Reid's personal report on both the Paris
and Boston meetings is included as Appendix B.
5. EXTRA MEETINGS ON FORTRAN
Fortran Forum
John Wilson proposed setting up another Fortran Forum in the Spring of
1989 during the second review period of Fortran 88. It was suggested that there
should be a more practical session on Fortran than at the last Forum. It was
pointed out that the Forum would still have to consider the changes in the Final
Draft to that of S8 and that there would have to be a discussion of the new items.
Evening Meetings on Fortran
The Vice-Chairman, Chris Lazou, who had been given the task of organising
the first evening meeting in London was absent from the meeting but it was still
hoped to be able to arrange one in the near future.
(Secretary's note: Chris Lazou has been unable to arrange a meeting
date before the next Group meeting. However, a day meeting has been
organised by Glasgow Branch of the BCS on l2 January 1989).
Tutorial Meetings
It was also suggested that Fortran tutorial meetings could also be
arranged probably in the evening.
6. BCS BUSINESS
Special Group's Management Committee
The Secretary, John Young, attended the meeting which took place on
7 September 1988 at BCS HQ as the Chairman, John Wilson, was unable to attend.
In presenting his report of the meeting, John Young covered the following
items.
(i) VAT procedures are still being considered and a meeting of specialist
group treasurers would be convened. VAT is not to be paid on
meeting admissions.
(ii) The SGMC has one representative on Council and the Technical Board.
Following a ballot John Davis was elected to Council and Tom Lake
to the Technical Board.
(iii) The Database Specialist Group was given approval to change its
name to the Data Management Specialist Group.
(iv) The Reference Manual is to be printed and available by the next
meeting. The Handbook is to be published yearly in September.
(v) Two new Journals are to be published. The first is "What's on
in Computing" to be launched in October 1988 and the Bulletin
and Newsletter are to be merged in the new year. The Martin
Thomas lecture has been printed.
(vi) The BCS has been accepted for Janet.
(vii) A new specialist group on Geographical Information is to be
formed with Gary Hunt as Chairman.
(viii) BCS now has enough applications for Chartered Engineer for full
accreditation.
7. FUTURE MEETINGS
The next meeting of the Group will take place on Thursday, 19 January 1989
at BCS HQ. Please note the corrected date.
The following meeting will be the AGM and will be held in Oxford on
Thursday, 2O April 1989.
The meeting scheduled for July will be held slightly earlier on Thursday
29 June 1989 at BCS HQ to consider any final preparations before ISO publishes
the International Standard of Fortran 88.
Dave Vallance from the University of Salford described FTN77/386 the PC
Fortran Compiler which his group has written and is currently promoting for sale.
He then introduced Tao Lipinski from NAG who presented his "Portable Package
Framework" which is a library of subroutines to allow the porting of F77 packages.
This work is a joint project between the University of Salford and NAG and fringes
on the efforts being made to bring a 4GL approach to Fortran. Reports of both
talks will be circulated at a later date as Appendix C.
[No copies of appendices A (above) and C appear to be available.]
John Young
Secretary
6 January 1989
To: Fortran Forum, BCS, NAG, etc.
From: John Reid
Date: 6th December 1988
Subject: ISO/WG5 meeting in Paris and X3J3 meeting in Boston.
Note: This is a personal note on the meetings and in no sense does it
constitute an official record of them.
1. Introduction
My usual practice is to construct a 'public'report by applying a very
small number of mechanical changes to the trip report that I make to
my organisation (removing such things as the date of the next meeting
of our group). This time, I am proceeding a little differently. The
deadlock in X3J3 is over. This would probably not have happened
without the influence of the ISO/WG5 meeting in Paris. Therefore this
report is constructed from two of my private trip reports.
2. Summary of the WG5 meeting
WG5 expressed great dissatisfaction with the deadlock in X3J3. It
wanted a single compromise plan leading to the appearance of a fresh
draft standard soon. The plans of Weaver, Philips, Reid/Smith, and
Brainerd et al. were presented by Dick Weaver, Ivor Philips, Andy
Johnson, and Lawrie Schonfelder, respectively. It was decided quite
quickly that neither the Weaver plan nor the Philips plan were
suitable. They were seen as too large a departure from the draft and
likely to result in many no votes in a second ISO ballot. The authors
of the remaining plans meet to discuss how a compromise plan might be
constructed that met the objectives of both plans and was likely to be
acceptable to WG5. This left several decisions open, so straw votes of
WG5 were taken before a final plan was proposed. This was modified
slightly by WG5 and was adopted on the final day with a vote of 30-2-5
by individuals (Dick Weaver and Ivor Philips voting no) and 8-0-1 by
countries (USA abstaining). The resolution (P2) is reproduced here as
an appendix.
WG5 also adopted a resolution (P5) expressing its belief that the
timely revision of the Fortran standard is critical and adopting a set
of milestones leading to the completion of a second ISO ballot before
the next WG5 meeting (10-14 July 1989). This was passed with a vote of
24-4-9 by individuals (Weaver, Philips, Johnson, and Warren (IBM,
Canada) voting no) and 6-0-3 by countries (Japan, Sweden, and USA
abstaining).
3. Summary of the X3J3 meeting
A draft standard implementing the WG5 plan (P2) was distributed to
members in time for the 2-week rule. X3 directed X3J3 that the US
support a single Fortran standard. Early in the Boston meeting it was
decided (24-9) to accept a plan based, in general, on the P2
resolution and during the meeting most of the P2 changes were adopted
(see Section 4). None of the plans that were under consideration at
Jackson were discussed seriously, although Ivor Philips (Boeing) had
prepared an edited S8 to implement his plan and tried to persuade the
Committee to consider it in detail.
There were a number of procedural arguments, but the will of the
Committee was clearly to get on with the job of producing a draft
broadly in line with P2 and an enormous number of proposals were
considered (a lot of work for the Secretary). Every technical change
needs a majority of all members to vote YES (that is, at least 22 YES
votes) and a 2/3 majority of those voting. Most votes met these
requirements with ease, but adopting parameterized LOGICAL just failed
(24-13) and deleting the new form of DATA statement only just passed.
As a result, the only significant differences between P2 and S8 are:
1. Pointers have not been added yet to S8.
2. Internal procedures and host association have not been removed
from S8.
3. Stream i/o has not yet been added to S8.
4. Parameterizing LOGICAL has been rejected for S8.
5. Vector subscripts are included in S8 but not in P2.
Soon each member of WG5 will receive a copy of the draft standard
based on P2, marked up at the discretion of the Convenor to correct
minor errors and include minor changes made at Boston to S8. Also
each member of X3J3 will receive a copy of S8 that includes the Boston
changes.
It looks as if S8 will be processed in parallel with the WG5 document
for a while. X3J3 adopted (30-4) a schedule aimed to match the urgency
of the P5 resolution, but it does not envisage S8 being released by
X3J3 until May 1989, too late for an SC22 ballot to take place before
the July meeting of WG5. However, there is determination on both sides
to avoid having two standards, so there seems every hope that the two
documents will converge before eventual adoption of either.
4. Technical proposals
A large number of technical proposals were considered, which led to
the following changes to S8:
1. Delete RANGE (30-3).
2. Add MIL-STD bit intrinsic functions (34-2).
3. Remove square brackets from array constructors (32-5).
4. Add INCLUDE (31-6).
5. Restore vector subscripts (35-4).
6. Adopt parameterized real and complex (30-7).
7. Add KIND= support for integers (31-5).
8. Remove user elementals (29-6).
9. Remove the new form of the DATA statement (24-10).
10. Extend interface blocks to specify overloads (36-0).
11. Remove IDENTIFY (34-1).
12. Add significant blanks to free source form (33-5).
13. Remove derived-type parameters (35-2).
14. Adopt KIND= for CHARACTER (26-9).
15. Disallow overlapping CASE ranges (Un.).
16. Continue execution after a SELECT CASE block having no
match (25-9).
17. Do not allow the number of characters written to an internal file
to exceed the length of the record (32-0).
18. Add REPLACE as another STATUS option of the OPEN statement (Un.).
19. Change array constructors to use i/0 syntax (Un.).
20. Remove DO TIMES (29-4).
21. Remove VALUES= specifier (29-3).
22. Add B, O, and Z edit descriptors (34-0).
23. Add binary, octal, and hex constants (35-0).
24. Add DO WHILE (27-9).
25. Generalize G edit descriptors to include all intrinsic
types (27-3).
There were unsuccessful motions to remove module procedures (11-24), to
remove host association and internal procedures (18-19), to adopt KIND=
for LOGICAL (24-13, and 18-18 when revisited), and to allow namelist
i/o for internal files (7-19). It was decided (25-10) to adopt a
pointer facility based on adding a pointer data type (instead of
adding a pointer attribute), but details have yet to be worked out.
5. Presentation by John Rice (IFiP Working Group 2.5)
IFIP WG 2.5 (Numerical Software) wrote a forthright letter to X3 and
X3J3 expressing alarm at the deadlock and appealing for differences to
be resolved for the sake of the users'needs for a new standard. John
Rice addressed the Committee on behalf of WG 2.5. He explored the
various possible reasons for deadlock.
6. Presentation by Guy Steel (Thinking Machines)
Guy Steel appealed to the Committee to reconsider two features that
used to be in the language and are now relegated to Appendix F -
vector subscripts and FOR ALL. He must have been pleased that the
Committee decided to restore vector subscripts.
7. Presence of Gerhard Schmitt on behalf of WG5
Gerhard Schmitt attended the meeting on behalf of WG5. He did not make
a formal presentation, but it was most helpful to have him present to
explain the WG5 position on each issue. He is also a member of SC22
and was also able to explain the view of that Committee.
8. Next meeting of X3J3
The next meeting of X3J3 will be in Stanford, 12-l7 February. The
deadline for the pre-meeting distribution is 9 January.
Appendix. WG5 resolution P2
That WG5 agrees, based upon the ISO member bodies comments as documented in
ISO/IEC JTCI/SC22 N464 and ISO/IEC JTCI/SC22 N495, and upon the X3J3 straw
votes documented in X3J3/221 and X3J3/22Q,that DPl539 be revised in the
following way :
a) in accordance with X3J3/S16 (S16 is a list of editorial changes)
b) as per the text in ISO/IEC JTC1/SC22/WG5 N302 with regard to the
following features
1 remove the concept of deprecation (US)
2 remove RANGE/SET RANGE (Ca,D,NL,UK,US)
3 remove ALIAS/IDENTIFY (Ca,D,NL,UK,US)
4 remove specified REAL/COMPLEX precision (REAL(*,*)) (D,J,NL,US)
5 remove internal procedures (US)
6 remove square brackets for array constructors (D)
7 add pointers (and associated facilities) (Ca,F,D,NL,UK,US)
8 add MIL-STD bit intrinsic functions
(but with original MIL-STD names restored) (A,Ca,F,D,NL,UK,US)
9 add significant blanks to free form source (Ca,F,D,NL,UK,US)
10 change host association to use association
in module procedures and remove host association (US)
11 add parameterization (KIND=) to INTEGER (UK)
12 add parameterization (KIND=) to REAL/COMPLEX (D,J,NL)
13 add parameterization (KIND=) to CHARACTER so as
to allow multiple character set support (Ca,Ch,F,J,NL)
14 add the INCLUDE statement (US)
c) text to be developed
1 remove user-defined elemental functions (US)
2 remove the new form of the DATA statement (US)
3 change interface blocks to that described in
ISO/IEC JTC1/SC22 WG5 N316 (US)
4 change array constructor syntax to use I/O syntax (US)
5 remove parameter to derived types (US)
6 add stream I/O intrinsic procedures (D,UK)
7 add binary, octal and hexadecimal constants and
edit descriptors (Ca,NL,UK)
8 add parameterized LOGICAL (KIND=) (A,Ca,F,D,NL,UK,US)
The codes alongside each point denote the member bodies which mentioned the
point in their comment. The abbreviations used are: A-Austria, Ca-Canada,
Ch-China, F-France, D-Germany, J-Japan, NL-Netherlands, UK-United Kingdom,
US-United States.