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
ftp://ftp.nag.co.uk/sc22wg5/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 XBJ3 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.


8.      TALKS


        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



APPENDIX B


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.