Minutes of the Meeting of BCS Fortran Specialist Group held at
IBM Southbank, 26th November 1992
Present: Mike Nunn CCTA
Miles Ellis Oxford University
Roger Keeling Salford Software
Nick Saville ASE Ltd
Chris Little Met Office
Mike Geary NAG Ltd
Carol Hewlett LSE
Chris Lazou HiPerCom Consultants
Rick Hewett Seismograph service
John Young PE - MOD (afternoon)
Peter Mayes IBM
1. WELCOME TO MEETING
The Chairman, Chris Lazou, welcomed everyone to the meeting and
thanked IBM for their generosity in providing the group with a
meeting place and coffee.
2. APOLOGIES FOR ABSENCE
The following sent their apologies:
Tim Bartle and Dave Vallance, Salford, Ben Roston, IBM, David
Muxworthy, Edinburgh, Ted Golton, Rutherford, Peter Holland,
SSL, Lawrie Schonfelder, Liverpool, John Young for morning.
3. MINUTES OF THE MEETING OF 3.9.92.
The minutes were accepted as a true record without any
corrections required.
4. MATTERS ARISING
4.1 Miles Ellis reported that an agreement with ISO allows
the acquisition of an electronic version of the Fortran 90
standard for £10 per copy plus a small fixed charge. This
is much cheaper than the £160 per hard copy from BSI.
Chris Lazou has expressed disquiet to a BSI member of
staff on the probity of charging such a high price for the
F90 standard.
Action: Miles to supply details of how to obtain F90
standard in the Fortran Newsletter. [see appendix]
4.2 It was reported that ANSI has approved the Fortran 90
Standard.The question of F90 certification was raised by H
Mike Nunn. No specific proposal was identified as yet
5. REPORT FROM X3J3 REPRESENTATIVE - Miles Ellis
X3J3 are working hard processing all requests for
interpretations and developing a document (S20) which will
regularly be passed to WG5 for approval and publication. There
have been 118 errors discovered, 33 replies approved, 45 have
gone to ballot and 40 are under consideration. S20 contains
corrections and clarifications.
The formal task to revise the F90 standard was assigned to X3J3
and is to be handled as an I-Project under ISO rules. The next
version is planned for 1995 and is expected to contain mainly
clarifications and corrections. No new functionality is
envisaged until the year 2000. Specification for the year 2000
revision is required by 1995. Feature specifications from
National bodies are expected to be ready by the end of 1993.
X3J3 is tracking some of the parallel activities of ad hoc
groups which concern Fortran. These include X3H5, HPFF, an
Object Oriented group and a POSIX interface group.
The membership of X3J3 has contracted from 45 to 31 at present.
Jeanne Adams has stepped down as chair and was replaced by Jerry
Wagener. No secretary has been identified as yet. The UK
representation is dwindling, and Miles may not be able to
attend in future. Geoff Millard, EPC is the only other UK
representative we are aware of.
[Click here for a more detailed report]
6. FUTURE WORK DIRECTIONS OF BCS FSG.
6.1 C. Lazou commented that the discussion paper from M.
Ellis was a bit alarmist in presenting an "either" "or"
choice for the future of the group.
6.2 M. Ellis pointed out that he was attempting to prompt a
frank discussion of the issues which the group needs to
address if it is to remain relevant. He then read a letter
from D. Muxworthy who wants the group to continue, but he
finds it increasingly difficult to justify travel costs.
The meeting moved to discuss the main issues.
C. Little expressed his interests and thinks that FSG can be of
help in evaluating (quality) of F90 compilers as they arrive on
the market.
N. Saville is interested, as a user, in keeping tabs on whether
F90 will "fly" and whether Universities will teach it.
The strategic objectives items in Miles paper were individually
discussed. These objectives were considered admirable and Miles
was thanked for putting them down on paper, but the debate was
on whether they were feasible. Item 3 was considered impossible
to achieve with our present resources.
C. Lazou has distributed a Fortran and C questionnaire as used
at a recent conference. It was agreed that this should be
distributed to all FSG members with these minutes.
A new Fortran Magazine:
C. Lazou reported that, he had informal discussions with
publishers, and they consider a minimum of 1000 subscriptions
are required for any magazine to be commercially viable. Miles
responded. that what he had in mind was something much more
informal and consequently cheaper to produce.
Action: Miles to develop proposal with costs quantified. Any
suggestions by members should be send to Miles.
C. Hewlett suggested using the BCS membership list to publicise
the FSG's activities.
Action: C. Lazou to investigate
7. BCS AND ANY OTHER BUSINESS
C. Lazou reported on the Specialist Groups Management Committee
meeting, 16th September.
i) Concern was expressed that branches motion requiring
BCS to allocate 10% of funds to branches may undermine the
authority of Council to decide fiscal policy. The motion
was defeated at the subsequent AGM.
ii) 7 Mansfield Mews is available for BCS meetings during
daytime.
Temporary secretarial help
The meeting agreed to pay expenses for M. Ellis's secretary, to
attend the next two FSG meetings, so she can take and type the
minutes. The position will be reviewed at the AGM with the hope
that a secretary can be found to fill the vacant post.
The meeting adjourned for lunch.
IBM Fortran - A presentation by Peter Mayes, IBM.
In the afternoon Peter Mayes gave a presentation on IBM's
Fortran Developments. He reviewed the current status of Fortran
within IBM from his knowledge as a user and not as a compiler
developer and reminded the meeting that he was unable to talk
about unannounced products.
The main good news is that IBM is committed to implement F90.
IBM is active in HPF, but has not yet announced its position.
Their current Fortran xlf 2.3 (for RS/6000) contains full F77
plus IBM Industry extensions and significant F90 functionality.
It is available with various options: as a standard compiler
with optimization, a compiler plus VAST, or a compiler plus KAP
(Kuck Associates). It has a common back-end shared with C, C++,
Pascal and TOBEY, (Toronto Optimizing Back-End Yorktown).
The F90 features available are:
- Derived Types (partial compliance)
- Interface Blocks (partial compliance)
- Internal procedures (partial compliance)
- CASE construct
- Infinite IF and DO statements
- DO WHILE, END DO statements
- named END statements
- Array Language syntax (via the preprocessors)
The F90 features not available (Nov, 1992) are:
- Array language syntax in the compiler
- Fortran 90 pointers
- Modules and USE statement
- Defined operators
- Recursive keyword, RESULT clause
- OPTIONAL arguments
- INTENT attribute
- Fortran 90 free source form
- Attribute-oriented specification statements
- PUBLIC/PRIVATE attributes
- ALLOCATABLE arrays
- Array-valued functions
- Deferred-shape and assumed-shape arrays
Industry standard extensions include:
- STRUCTURE, RECORD, UNION and MAP statements (via the
preprocessors).
- FORMAT expressions
- VIRTUAL and VOLATILE statements
- Additional intrinsic fns in PARAMETER statements
- Trigonometric fns in degrees
- Many new service and utility procedures
VS Fortran 2.5 is supported on MVS, VM and AIX on ES/3090,
ES/9000 and Vector Facility. It supports F77 with industry
extensions. The IBM extensions are largely for mainframe I/O.
It also contains the following features for "Parallel Fortran":
- Automatically parallel DO loops
- Explicitly coded parallel loops and sections
- Synchronization subroutines
- Directives for parallelism
- I/O within parallel programs
- Subroutine calls within parallel loops and sections
Programming tools include:
- SDE/Workbench 6000
- LPEX: live parsing editor and,
- tprof: Source code statement level profiling
In summary IBM is committed to Fortran 90 and to standards in
general. IBM is represented on 1200 standards committees.
Fortran and C/C++ in Scientific Computing
Chris Lazou reported on the Fortran and C/C++ in Scientific
Computing, UNICOM Seminar held at Brunel University and
sponsored by FSG. This 3 day seminar was very successful in
addressing the latest issues of both Fortran and C/C++.
He then gave a short presentation on the status of HPF and
Vienna Parallel Fortran 90.
The key decision of HPF is to define a two level standard: a
subset for current compilers and a full set with F90 as the
base language. The HPF constructs include CHPF$ starting in
column one, making them advisory comments to the compiler and
not as part of the language syntax. This device of using pseudo
syntax circumvents conflicts with the existing F90 standard.
Vienna Fortran on the other hand provides genuine syntax
extensions to handle parallel data distribution, decomposition,
alignment and mapping onto processors with distributed memory.
This approach has a lot of merit as an experimental technique
to verify the usefulness and efficiency of various language
constructs but it is unlikely to be adopted at this stage. It
is too risky to opt for new unproven language feature so early
in the F90 life-cycle.
The aim is to have an HPF Parallel Fortran definition accepted
by most vendors, early spring 1993 and implementations by end
of 1993. The motivation for HPF is for the provision of Data
Parallel support within Fortran and an agreed standard
programming model to facilitate the efficient use of parallel
computers with distributed memory architectures.
It was noted that future parallel computers may overcome the
distributed memory problem by using hardware (more silicon for
memory path communications), as in the Virtual Memory Systems
pioneered by Kendal Square.
N. Saville enquired whether there was an HPF equivalent
activity for the C language. The answer was no, but some of
these concepts are addressed by the "Numeric C" standardization
effort.
The meeting closed at 16.30. The next meeting is to be held at
7 Mansfield Mews, (the back of 13 Mansfield street), on 25th
February 1993.
In the absence of a secretary these minutes were generated by
Chris Lazou from notes taken by Mike Nunn. Many thanks to Mike
for his support.
Chris Lazou
16.12.1992.
[The following report was distributed with the minutes of the FSG meeting of 26 November 1992.]
Report on X3J3 meeting 123, 1992 Nov 9-13 (New Haven, CT)
Miles Ellis attended this meeting and the following report is based on extracts from the
reports circulated on email by Len Moss (SLAC) and Jerry Wagener (Amoco, and Chairman
of X3J3), with modifications and/ or additions to reflect his view of what happened!
The principal objectives of this meeting were to (1) process as many of the interpretation
issues as possible, (2) generate a preliminary review of HPF, and (3) refine the X3J3
reorganization plan. Good progress was made on all three of these objectives.
Interpretation Processing
The procedure already agreed requires X3J3 to produce an agreed response to every request
for interpretation, and to agree this at one of its meetings by a two-thirds vote. Following
the meeting, first X3J3 and then WG5 will conduct letter ballots to approve the responses for
submission as official technical corrigenda to Fortran 90.
At the start of the meeting there were approximately 95 outstanding issues. These included
old unresolved issues and S20 items not yet at the balloting stage as well as new RFIs, but
not the 58 items on the S20 ballot. During the meeting all the "unresolved issues" were either
resolved or recast into S20 items. At the end of the meeting there were a total of 118 S20
items, of which
33 were "X3J3 approved; ready for WG5"
45 were "X3J3 draft response" and ready for X3J3 ballot
40 were still at "X3J3 consideration in progress"
Those of the 45 that pass the X3J3 ballot (which took place in December/January) will be
added to the 33 already ready for WG5. The WG5 ballot will take place around March.
The request for interpretation in 92-202r raised an issue of strategy for improving the
understandability of the standard. This paper pointed out a number of inconsistencies in the
use of the terms "attributes", "properties", and "characteristics", and proposed a set of about
40, mostly minor, edits to fix the problem. A number of members felt that attacking such
problems via the technical corrigenda process was not an efficient use of committee resources.
Instead, they felt that the corrigenda should provide minimal fixes for specific problems, and
more complete rewrites should be deferred to the 1995-96 revision. After some discussion, the
full committee took a straw vote on this specific proposal; the result was not conclusive, but
favoured pursuing the approach outlined in 92-202r: SV (11-8-5). Subsequently, members of
the DATA subgroup worked on this proposal and came up with some suggested changes and
additions but these have not yet been reviewed either by the subgroup or by the full
committee.
High Performance Fortran (HPF)
HPF is being developed by a group called the HPF Forum (HPFF) as an industry standard
for massively parallel machines with distributed memory architectures. It is complementary
to the parallel computing work being done by X3H5, which is independent of memory or
data layout issues, and instead concentrates on block-structured parallel control structures.
HPF is based on a subset of Fortran 90, with a number of directives to control the way data
is laid out in memory. The directives are in the form of comments and can simply be ignored
by a non-HPF compiler without changing the meaning of the program. However, the latest
draft now includes one feature which goes beyond Fortran 90, namely, a FORALL statement.
Despite this incompatibility, the sense of X3J3 was that FORALL was a useful extension for
parallel machines. In a straw vote, the committee also reaffirmed its previous endorsement
of the directives approach for data layout.
HPF also includes a number of new functions, and there was some discussion of how the
names of these functions should be managed. Normally, X3J3 would recommend putting all
these functions into a MODULE in order to confine potential name clashes to those scoping
units where the functions are actually needed. However, a few of these functions must be
permitted in initialization and specification expressions, which implies that they need to be
resolved like intrinsic, rather than module, procedures. The committee seemed to be
generally agreed that HPFF should minimize the pollution of the intrinsic function name
space, but was divided on how to do so. Some members felt that, since the module
containing the new functions would be an "intrinsic" component of any HPF compiler (and -
because there was no expectation that the functions it contained would be written in Fortran),
the USE for this module could act as a compiler switch to control the visibility of the new
intrinsics. Others, however, felt that such selectively visible intrinsic functions were not
included in Fortran's blanket permission to add implementation-specific intrinsics (p 2, ll
33-35), and so would constitute a second (along with FORALL) extension to Fortran 90.
A team of three people spent the week as an ad hoc SWAT team to review HPF/V04,
primarily from a "how does it fit with Fortran 90" point of view rather than a technical
functionality point of view. Generally HPF gets high marks on this score, though several
straw votes were taken on suggestions for specific recommendations. It was agreed that this
team would prepare a letter to HPF consistent with this direction, have one final email review
on the X3J3+WG5 network, then send it off to HPF in time for their December meeting. The
main two straw votes taken were (1) "directives vs syntax" (directives won, but the basic form
of the directives should be consistent with the syntax approach) and (2) "an HPF module, or
no, for packaging the HPF intrinsic functions" (an HPF module won, as the best way of
managing the namespace, with the USE HPF statement treated as an appropriate directive for
the HPF subset).
X3J3 Organisation
Following the previous meeting in August 1992, the chair had proposed reorganizing the
committee into a new set of subgroups, so that about half the members would continue to
concentrate on interpretation processing while the remainder would begin work on other
tasks, including the 1995-96 minor revision and liaison with other standards bodies. Because
of the large volume of new interpretation requests submitted between meetings, the
committee agreed to continue for this meeting under its old subgroup structure. However,
the reorganization plan was discussed by the committee and accepted with two modifications:
one additional subgroup will be added to research object-orientation issues for Fortran (this
subgroup will be named X3J3/OOF); and, for the next couple of meetings, subgroup time will
be scheduled in such a way as to permit most members to serve on both the new
X3J3/F90maint subgroup and on one of the other new subgroups. It is also expected that,
for a time at least, X3J3/F90maint will continue to subdivide itself along the same lines as the
old subgroups. Thus, at the next meeting in Fort Lauderdale in February, the committee will
be organized something like this:
Track 1 Track 2 Track 3
X3J3/F90maint: X3J3/JOD X3J3/ editorial
General Concepts X3J3/OOF
Data Concepts X3J3/parallel
Control Constructs X3J3/posix
and Input/ Output
Procedures and
Program Units
(The editorial subgroup will probably meet in parallel with both the other sets of subgroups.)
The new subgroups did meet briefly one afternoon to get organized.
TMRE
29/1/93
Electronic version of Fortran 90 Standard
The following announcement was made in late November by Walt Brainerd of Unicomp, as
mentioned by Miles Ellis at the last meeting of the Group:
In accordance with an official agreement with the International Standards
Organization, Unicomp is now able to distribute electronic versions of the
Fortran 90 standard: "ISO/IEC 1539:1991, Information
technology-Programming languages--Fortran".
The money received from this effort will go partly to fund ISO activities and
partly to recover the costs incurred by Unicomp in preparing and typesetting
the standard document. The prices are set by ISO.
The document can be obtained in three versions:
1. An ASCII version suitable for viewing on a computer terminal using any
kind of editor. Cost: US$125.
2. A PostScript version with a license allowing the purchaser to print n
paper copies. Cost: US$125 + 10n.
3 Complete source in ditroff with macros and software to extract and
create the annexes. The source constitutes a fairly high level marked up
document; for example, each program beginning and ending is marked
and there are few low-level typographic commands such as size and font
changes. Cost US$1000.
I am quite enthused especially about version (2). If you want to have 10 copies
for your organization, and it costs $10 to make a printed copy, then the cost to
make the 10 copies would be $125 + $200, or just $32.50 per copy, which is a
substantial savings over purchasing paper copies.
Versions (1) and (3) will be accompanied by a license restricting use to one CPU
and prohibiting copying, except for backup purposes, etc. The version (2)
license will prohibit distributing any of the printed copies outside of the
purchasing organization.
If you have special requirements, such as wanting to distribute a copy with each
version of your compiler or using the source as a part of your documentation,
we can make special arrangements, subject to the approval of the ISO. Please
advise me of your requirements and we can work up a proposal together.
ISO and Unicomp think this will provide the often requested access to the
standard in electronic form. This is the first time this is being tried, so we hope
that organizations will be careful to observe the rules and encourage the
continued availability of this and other standards in electronic form.
Payment can be made by Visa or MasterCard, or with a check on a US Bank in
US funds. We will accept a purchase order only if the amount is $500 or more.