Minutes of BCS Fortran Specialist Group Meeting
held at BCS HQ on 21st January 1988
Present: Stephen Clarke - Inmos
F.E. Cox - Swifte
R.G. Crawford - RAE Pyestock
J.L. Dyke - H.R.C.
W. Flexner - Retired
Mike Geary - NAG
Dave Griffiths - SF
Carol Hewlett - LSE
Peter Holland - SSL
Chris Lazou - ULCC
Clive Massey - SWURCC
Alastair Mills - Cray Research
Keith Normington - Coventry Polytechnic
Mike Nunn - CCTA
Kevin Pritchard - UMIST
N. Smith - RAE Bedford
Julian Tilbury - University of Salford
Paul White - Met. office
Alan Wilson - AMT
John Wilson - University of Leicester
John Young - MOD (PE)
1. Apologies for Absence
Apologies were received from Miles Ellis, David Muxworthy and John Reid.
2. Minutes of Previous Meeting [1 October 1987]
The minutes of the previous meeting were accepted without revision.
3. Matters Arising
It was intended to devote the afternoon session at the next meeting in
April to talks comparing Fortran with Ada. Professor Mike Delves of
Liverpool University was suggested as a speaker. Members were reminded
that this meeting would also be the AGM.
4. BCS Business
(i) The chairman mentioned that a budget submission was due from our
Group to BCS for next year's funding allocation but, as the
Treasurer was not able to be present.he was not sure of the latest
position.
(ii) BSI Response to ANSI on Fortran 8X
Members of the Fortran Group felt unhappy that the position being
put forward for the UK response by BSI to ANSI did not reflect the
message which came over from the delegates attending the recent
"Fortran Forum" in London arranged to discuss the new draft
standard. After some discussion the chairman decided to take two
votes.
The first was :
The Group should write to BSI saying that the message of Fortran
Forum was that the UK Fortran community's response to the new draft
was "Yes with comments" rather than "No".
This was agreed by a vote Yes - 14, No - 0, Abstain - 7.
The second was :
The Group should write to CBEMA independently of BSI (CBEMA acting
as ANSI's secretariat) expressing the BCS Specialist Group's view,
and saying that we would like the votes taken on accepting the new
standard at the Fortran Forum and by this meeting taken into
account.
This was agreed by a vote Yes - 18, No - 0. Undecided - 3.
A third vote was taken on whether those present were broadly
speaking in favour of the draft standard as it is now, subject to
minor editorial changes, rather than experiencing delay of a few
years which would be necessary to get new features in.
The vote resulted: Yes - 12, No - 6, Undecided - 3 in favour
of the draft.
[Chairman's note: after consultation with various members of the
group the letter copied in Appendix A was sent to CBEMA.]
(iii) The chairman noted that the BSI publication "British Standard Method
for Specifying Requirements for a Fortran Language Processor" was
now officially released as BS 6832:1987 and costs £25.60
5. Fortran 8X - Progress Report from X3J3
(i) John Reid has produced a report on the recent meeting of X3J3 in
November at Fort Lauderdale (see Appendix B). Not much reportable
activity had taken place: there was an embargo on new work items and
the committee was waiting for the results of the public review of
the 8X draft standard.
(ii) Apparently, the Fortec Fortran newsletter has a useful summary of 8X
for those who are interested.
(iii) A new standing document with the title of "Journal of Development"
had been published. Initially this would contain Appendix F of the
8X draft which describes those features originally considered for
inclusion in 8X but which had eventually been left out.
John Wilson. our chairman. had produced a summary of "Fortran Forum"
held in London in November which had been sent out to Group
members. David Muxworthy had also produced a paper circulated to
members of the BSI Fortran Panel. 152 people attended the Forum. The
final accounts are not yet in but it is believed a profit of a few
hundred pounds has been made. We have a few surplus copies of the 8X
draft standard which are being offered at £15 a copy. Anyone who would
like one should contact Debbie Dawson at BCS HQ.
David Muxworthy has produced a report on Fortran Forum as part of his
quarterly report to the BSI (a copy is attached in Appendix C). The
Forum demonstrated that people were basically happy with 8X but wanted
their pet features put in. In general they also felt the language was
not too large. Miles Ellis was congratulated on doing an excellent job
in co-ordinating the written questions put at the meeting. Over 100
comments on the draft had been received from attendees and would be
passed on to X3J3.
The BSI Fortran Panel has produced a composite of UK views, especially
taking into account the opinions expressed at the Forum, and will send
this direct to the ISO convenor, Jeanne Martin, and also to X3J3.
Replies to individual comments will come back to the BSI panel, who
will pass them on to the originators. Because of the large volume of
comments it will probably take X3J3 about 6-9 months to respond to
them all.
John Wilson reported that the ISO voting procedure allowed BSI three
alternatives to choose from when voting on the 8X draft viz:
Yes, without comments
Yes, with comments
No, with reasons
BSI thought it could not choose the second of these because it would imply the
document was basically OK. whereas in fact it was considered too flawed to
accept without significant changes. It would therefore vote "No". but would
change its vote to "Yes" if 6 objections were met, viz:
- include bit manipulation facilities
- include pointer facility
- specify action to be taken if processor cannot satisfy requested
precision for Reals,
- remove SET RANGE and RANGE
- remove ALIAS and IDENTIFY
- correct typographical errors
As well as the six "mandatories" for inclusion, the BSI panel also
listed "highly desirable" features, including runtime error reporting
and facilities for handling radices other than 10, and "desirable"
features, including stream I/O and significant blanks, which it wished
to see included. In addition, it listed "good things" which it would be
opposed to the review taking out.
Several of our members at the January meeting were unhappy with the
BSI response. Chris Lazou thought that the "Fortran Forum" message
was "let's get on with 8X" and a "No" vote did not reflect this. Keith
Normington wanted to send a statement to BSI saying that we believed
that their position was too rigid and severe, and did not reflect the
Fortran community's position. Such a letter should quote that a straw
vote taken was "Yes with comments". Chris Lazou believed the general
feeling was that, although many would like to see extra features in
8X, people would rather forgo these if it meant significantly delaying
the appearance of the new standard.
7. Any Other Business
The secretary asked for suggestions for talks at future meetings.
Responses included:
Fortran on a Network
Automatic Vectorisation
Expert Systems
Fortran on Multi-Processors
Tools for Fortran debugging on highly parallel computers
8. Date of Next Meeting
The next meeting of the Group will take place on Tuesday 19th April at
BCS HQ. In the afternoon Professor Mike Delves will give a talk comparing
Fortran with Ada. There will also be a short talk by Nick Saville on his
experiences in programming in Ada. The meeting will include the AGM.
9. Talk "The Array Processor Features in Fortran 8X" by Alan Wilson (AMT)
At the afternoon session Alan Wilson (Active Memory Technology) and a
member of the 8X committee gave a talk on the new array processor features in
8X. Alan said that the X3J3 array extensions sub-committee's first thoughts
were to do "mathematical things" like MATRIX A + MATRIX B = MATRIX C in Fortran.
Examples of other things they wanted to include were :
geometric subsets, such as diagonals of matrices,
adding up array elements,
functions returning arrays.
finding the largest element in an array.
All these features will be available in 8X. An important concept is "array
aliasing", giving some subset of an array a name, then operating on it as if it
was a l-dimensional array. Another idea was "array sections"
e.g. (A:,3) - here the third column of array A if referenced.
Other examples of new features :
(i) unconditional array assignment
A = B + C + SIN(D)
... where A,B.C.D are the same shape
(ii) unconditional array computations
A = B + C
(iii) conditional array assignment
WHERE (A.GT.0) A = B
... replace positive elements of A with corresponding
elements of B
(iv) largest array element
L = MAXVAL (P)
(v) reduction
e.g. reduce elements of an array to one scalar sum or
multiply all elements together
(vi) construction
e.g. merge two arrays together
10. Talk "Implementation of Array Processor Extensions in Fortran 8X by Cray
Research" by Alastair Mills of Cray Research (UK) Ltd.
Also at the afternoon session Alastair Mills of Cray Research
(UK) Ltd. gave a presentation on Cray's plans for implementing the 8X
array feature extensions. Alastair works for the Technical Support
Group in the UK. Cray expect to implement the new array extensions in
a timely manner by around 1989. Cray wrote their new Fortran compiler
CFT77 (which superseded CFT, also Fortran77) in Pascal in 1985. It has
the advantage that by changing the front-end it can be used for
implementing languages other than Fortran. It includes features for
auto-partitioning code for multi-processor systems.
A copy of the slides of Alastair's talk appears in Appendix D.
Mike Nunn, Secretary.
4th March, 1988
February 16, 1988
X3 Secretariat
C.B.E.M.A.
3ll First Street N.W.
Suite 500
Washington D.C. 20001 - 2178
U.S.A.
Dear Sir,
The Fortran Specialist Group of the British Computer Society wishes to
make some general comments on the draft Fortran standard (document
X3J3/S8.l04) in addition to the specific comments supplied by
individual members.
The following comments are based on a public forum held by the group
on the 23rd November 1987 and an open meeting of the group held on the
21st January 1988. A set of individual points made at the forum has
already been sent to you.
1. The group expresses appreciation to the members of the X3J3
committee for their work in producing the draft standard. It feels
that the proposal is broadly in line with the requirements of current
and future users and urges the committee to proceed to a full standard
with all due expediency. The following features are particularly
welcomed and should not fundamentally be changed:
- language evolution concept
- new source form
- derived data types
- array features
- control constructs
- internal procedures
- procedure interface structure
- recursion
- module concept.
2. The draft document is not excessively long in its present form.
3. A bit manipulation facility is essential: a set of intrinsic functions will
be adequate.
4. A pointer facility is considered important but not if it causes significant
delay to the standard.
5. Some simplification and revision of the facilities for allocating different
names to parts of arrays is considered important.
6. The action to be taken by a processor when the required precision cannot be
satisfied must be specified by the standard.
7. The parameterization of integers, as well as reals, should be allowed.
8. Format codes should be available for octal and hexadecimal I/O conversion.
9. The stated rules relating to language conformance are welcomed. but should
be extended to allow the user to request the detection and reporting of
common run-time errors.
Yours sincerely,
J.D. Wilson
Chairman, BCS Fortran Specialist Group
To: Fortran Forum. BCS. NAG...
From: John Reid
Date: 24 November 1987
Subject: X3J3 meeting in Fort Lauderdale
Note: This is a personal report of the meeting and in no sense does it
constitute an official record of it.
1. Summary
This meeting was primarily concerned with agreeing responses to
comments made by X3 members with their ballots. In addition, some
editorial changes were agreed, as were some minor technical
corrections. A decision was made not to work on major proposals at
this time in order to concentrate on improving the present draft.
2. Editorial matters
Eleven papers containing minor editorial corrections were adopted, all
by unanimous votes, and a rewrite of the description of DO was adopted
with just one no vote. A rewrite of the description of the new source
form was generally welcomed but was not moved because its
interpretation of the exact meaning of the 2640 character limit for
statement lengths was not found acceptable.
3. Journal of Development
It was agreed (18-12) to establish a new standing document called the
Journal of Development. Initially, it will consist of the contents of
Appendix F of the draft standard. Other technical material that is
developed by the Committee but is not adopted for the standard may, by
a separate vote, be adopted for this document. This will give well
developed proposals a chance to stand out rather than be lost in the
mass of the minutes.
4. Items from ISO
One of the ISO resolutions expressed concern over the use of '[' and
']' in array constructors because they are not available in the ASCII
sets of some European countries. A proposal to rely entirely on the
alternatives '(/' and '/)' failed (16-10) (a 2/3 majority is
needed). George Paul promised to prepare a proposal using function
notation.
Another ISO resolution commented on the status of a saved variable in
a procedure with arguments having passed-on precision. A clarification
was adopted (29-0) that such a saved variable is not duplicated but
rather is accessed by all the versions of the procedure.
5. Fortran binding to the data-base language SQL
Last summer. committee members were asked to vote as individuals on a
document produced by ANSI Committee X3H2 on language bindings for
SQL. There were 19 yes votes, 3 no votes, 4 abstentions, and 12 did
not vote. The no votes (one of which was mine) all gave reasons and
comments were attached to one yes vote and one abstention. Informally,
X3H2 sent its replies to all these comments and asked for a committee
position. The no voters were unsatisfied and the committee felt that,
having been balloted as individuals, it was inappropriate to respond
as a whole. My no vote was based on a potential syntax ambiguity once
SQL is embedded in Fortran 8x and I suggested a very simple change to
remedy this. X3H2 acknowledged the problem but refused to do anything
about it because "it was felt that the situation would occur only
rarely". How's that for an attitude towards safe programming?
6. Work on major technical proposals
Concern was expressed that working on major technical proposals such
as bits, pointers, or very large character sets detracts from checking
the present draft for consistency with Fortran 77, internal
consistency, and general quality. Work on such major proposals is
pointless if there is no prospect of getting the necessary 2/3
majority vote. In a straw vote, the committee was asked whether it
preferred
(1) No new technical work, with the goal of avoiding a second public
review.
(2) By separate votes to establish working groups for major technical
work and terminate other major work.
(3) No such freeze.
(4) Undecided.
The vote went 17-13-9-3 and without item (3) it went 16-24-2. Formal
roll-call votes were then held under (2) for pointers (18-10), bits
(16-13), and very large character sets (14-13). Since none achieved a
2/3 majority, the chairman announced that no work on these topics
would be placed on the agenda of the February meeting.
7. Rules for membership
In future, a new member will be appointed at the end of a meeting,
which avoids giving a new member superior voting rights over an old
member who has missed two meetings.
8. Public comment
The public comment period runs until February 22nd. The draft
standard is available from Global Engineering Documents Inc. by
calling (714) 540-9870 and the price is $50 (US) or $65 (overseas).
Comments should be sent to X3 Secretariat, Computer Business Equipment
Manufacturers Association, 311 First St. N.W.. Suite 500. Washington DC
20001-2178. USA. Within the UK, comments may also be sent to BSI Fortran,
1 Roxburgh St. Edinburgh EH8 QTA (or electronically to
BSI_Fortran@UK.AC.Edinburgh) by January 9th; these will be used to form the
UK position within ISO and will also be forwarded to X3.
9. Next meeting of X3J3
The next meeting of X3J3 is in New Orleans, February 8-12. The premeeting
distribution deadline is 4th January.
FORTRAN PANEL: BSI IST/5/5 Quarterly Report: December 1987
BS6832:1987 "British Standard Method for Specifying requirements for a FORTRAN
language processor", originally estimated for completion in November 1987 has
not yet appeared. The price will be £25.60.
The Panel has nominated David Muxworthy and John Wilson as principal members of
SC22/WG5, with Miles Ellis, Brian Meek, Lawrie Schonfelder and David Vallance
as alternates. Other members of the panel recently registered with Elaine
Butlin are Tony Addyman, Sven Hammarling, Les Hatton and Fred Hopper.
The Fortran 8X proposals are currently open for public review both as a draft
ISO standard (87/94274, SC22/N361 and 87/97462, SC22/N423), closing date
January 29, 1988, and as a dpANS, closing date February 23, 1988. ANSI have
transferred the copyright in the draft standard to Global Engineering Documents
Inc of Washington, who sell it for $65 outside the US. This has caused unease
in the Fortran community as it is believed to have inhibited circulation and
comment.
The Fortran Specialist Group of the BCS, in conjunction with the BSI Fortran
Panel, held a Forum in London on November 23 at which a summary of the Fortran
8X language was presented and the proposals discussed; a copy of the ISO
proposal document was provided to all participants. Some 150 people attended
and about 100 written comments were submitted; these have been entered into a
data base and will forwarded to ISO. In addition, the public have been invited
to send written comments to the IST/5/5 convenor; so far three people have
submitted some 30 pages of text in all. If the material stays within
manageable bounds it will be entered into a database and merged with the Forum
comments. The deadline for comments within the UK is December 31 and the
Fortran panel will process the comments during January. Various other forums
arranged by members of X3J3 and members of the BSI panel are also being held.
The general tenor of the November 23 Forum was that by and large people were
happy with the proposals but many wanted their favourite feature (eg type BIT,
pointers, INCLUDE, DO WHILE, alphanumeric labels, byte integer) added. Most
notably the principal criticism by the opponents within ANSI X3 and X3J3, that
the language is too large, was rejected. The straw votes taken at the end of
the meeting resulted as follows.
Y N U
type BIT in the language 56-37-27
BIT intrinsic functions 56-18-32
some form of pointer facility 54-38-18
blanks should be significant in new source form 33-38-35
format codes for integers radix 2,8,10,16 62- 5-32
committee should investigate multi-byte characters 16-34-53
stream i/o in the language 44-23-33
varying length strings in the language 36-26-37
is the language already too large? 9-86- 3
would you prefer to see the final standard based
on the proposals as now, or would you like to see
a delay of 2-3 years to get in BITs, pointers,
stream i/o etc 57-45- 3
David Muxworthy
IST/5/5 Convenor
IMPLEMENTATION OF
ARRAY PROCESSOR EXTENSIONS
IN
FORTRAN 8X
Alistair Mills
Cray Research (UK) Ltd
BRITISH COMPUTER SOCIETY
21 January 1988
[The 26 slides for this talk have not yet been digitized]