BRITISH COMPUTER SOCIETY - FORTRAN SPECIALIST GROUP
Minutes of Meeting held at ULCC on Monday, 7 February 1983
Present: M J Appleford : OVE ARUP Partnership
K Bicknell : Rothamsted Experimental Station
P D Bond : Philips Electronics
S G Brazier : United Glass PLC
K K Brodlie : Leicester University
C J Cartledge : University of Salford
B J Conway : UK Met Office, Bracknell
T Daalech : ECMWF
M L Dale : Scottish Special Housing Association
W R Dines : UKAEA (substitute for Colin Mackinnon)
R J Ellis : UK Met Office, Bracknell
S Frazer : OVE ARUP
G Gibbs : Clinical Research Centre, Harrow
J Gilbert : ULCC
G L Harding : ECM WF
I D Hill : Medical Research Council
D J Holmes : Rolls Royce Ltd (Bristol)
J Houlton : Moss Consortium
A J Jobson : ICI Engineering Dept, PO Box 14, Runcorn
C Lazou : ULCC
C T Little : UK Met Office, Bracknell
P Mackintosh : OVE ARUP & Partners
B Meek : Queen Elizabeth College
A Milazzo : West Sussex CC
D T Muxworthy : University of Edinburgh
K Norington : Coventry Polytechnic
M Nunn : CCTA
L L van Raalte : MOD
H Rice : Nat Inst Biol Stds & Control
S Robinson : West Sussex CC/Moss Consortium
H R Simpson : RES
D J Steinitz : London Network Team
A Swarbrick : UMIST
D M Vallance : University of Salford
M Wheeler : ULCC
J D Wilson : Leicester University
S M Wise : ULCC
Addresses: Chairman : John Wilson
University of Leicester
Leicester LE1 7RH
Secretary : D M Vallance
University of Salford
Salford M5 4WT
1. APOLOGIES FOR ABSENCE
Apologies were received from Dr Alan Wilson (ICL).
2. MINUTES OF PREVIOUS MEETING [29 November 1982]
Correction to item 2, 5(3) which is administered by the Specialist
3. MATTERS ARISING
The Secretary has not yet enquired whether BCS members are entitled to
a discount on ForTech Newsletter subscriptions and the meeting agreed
that this would not now be done.
The BCS has still not progressed the financial situation reported in
the previous minutes.
4. BCS BUSINESS
A general communication has been received from the Dutch Fortran Specialist
Group. It was circulated at the meeting. The Secretary has received
a specific request from a member of that Group regarding details of the
recent compiler survey and the questionnaire used to produce it.
A new book, Fortran Optimisation by Mike Metcalf of CERN, has been
published recently by Academic Press. It has been reviewed in ACM.
NAG Ltd have indicated that the NAG library will not make use of Fortran 77
specific features until Mark 12, due for release in 1985. Concern was
expressed by the meeting that Fortran 77 compilers were still not widely
used. It was hoped that members of X3J3 would note this fact.
Mr Van Raalte had attended the recent BCS Specialist Group's Board Meeting,
deputising for the FSG Chairman. The main issues were:
1) Funding The FSG has submitted a bid for £250 for the
coming year. The criteria for determining the actual
amount of funding was not finalised at the meeting but
would depend on 'performance' criteria applied by the
BCS. The actual amount available to the FSG will not
be known until mid-year at the earliest.
2) The Royal Charter This was discussed extensively and
was available in draft form.
5. X3J3 BUSINESS
The most effective way of keeping up-to-date with X3J3 is by receipt of
the X3J3 minutes. The Secretary receives a copy on behalf of the Group.
ForTech Forum also reports on X3J3 meetings. The summaries therein refer
to the X3J3 meeting held approximately 2 months before the ForTech Forum
The next Fortran experts meeting will probably be held in Germany in
late 1983 or early 1984.
The most recent X3J3 minutes indicate that only limited progress has
been made on Fortran 8X since X3J3's previous meeting.
The view was voiced that the FSG should express its reservations
formally to X3J3 about the current state of Fortran 8X. There is an
ISO languages meeting in Canada at the end of September at which such
a view could be expressed. The possibility of preparing a brief
questionnaire for FSG members was discussed and David Muxworthy agreed
to prepare a draft in time for the April meeting. Action D Muxworthy
6. FORTRAN COMPILER CERTIFICATION - A PROPOSAL
The Chairman has received a letter from Mike Nunn, CCTA regarding
compiler standardisation. The text of the letter is reproduced below:
"As you probably know COBOL and PASCAL are having compiler
certification schemes set up in the UK at present. NCC
will test COBOL compilers using FCTC methodology and BSI
has a working group to validate PASCAL compilers with a
test suite based on the NPL/Tasmania University tests.
Clearly something is needed for FORTRAN also. Talking
to our Standards section it needs some user initiative to
set the ball rolling. If, for example, the BCS FORTRAN
group were to decide to write to our Standards Section
saying there was a need for FORTRAN compilers used in the
UK to be validated and asking Department of Industry to
initiate such a procedure I think it would get things off
the ground. Perhaps we could have this on the agenda for
the next meeting."
It was noted that Softool Corporation have produced a program verifier
similar to PFORT.
It was the opinion of those present that the Chairman should write to
DOI stating that there is an urgent need for such a validation procedure.
7. "BRITISH STANDARD FORTRAN" - A PROPOSAL
Brian Meek once again presented his proposal for "British Standard
Fortran". The technical content of "BSF" would be exactly that of
the current ANSI Fortran Standard, but the "Standard" would be more
rigorous in its requirements for conformity. The proposal had been
presented to BSI and is being considered in time for its next OIS5
meeting. The title of the proposal is "Method of specifying requirements
for Fortran language processors". Brian Meek hopes that OIS5's parent
committee will make it a "work item" which will lead to its being done.
The report in Computing, which wrongly referred to a proposed UK only
standard, was not the intention of the reporter: this headline had
been added by the Editor. Brian Meek's later letter had been
substantially altered by the editorial staff so that his original
intention was obscured.
8. ANY OTHER BUSINESS
The Chairman invited nominations for FSG Officers in time for the AGM.
9. NEXT MEETING
The next meeting of the Group will be the AGM which will be held at
BCS Headquarters on Monday, 11 April 1983, at 10.45 a.m.
10. AFTERNOON SESSION
Ken Brodlie of Leicester University gave a talk entitled "GKS and FORTRAN".
Some notes on this talk appear as Appendix A of these minutes.
D M VALLANCE
GKS and Fortran
Dr K Brodlie, Leicester University
Graphical Kernel System - functional specification of the kernel,
or core, of a computer graphics system
Fortran binding for GKS
1976 : Computer graphics past the experimental stage - time to establish
Two classes of basic graphical software - in 1976 (and to-day!)
Software to drive particular devices
e.g. Calcomp Basic Software
-> programs not portable between devices
Device-independent graphical packages
e.g. GHOST, GINO-F, DISSPLA, .....
-> solves portability between devices, but proliferation of such packages
prevents portability of application programs
Motivation for standardization:-
portability of application software
Standard to be defined at the user level (of GINO-F), rather than device
National activities started to define a standard for the kernel of a
device - independent computer graphics system.
Two main efforts:
US ~ ACM SIGGRAPH GSPC CORE 1977
3D - "large"
West Germany - DIN GKS 1978
2D - "smeller" [sic]
ISO working group established in late 1978.
late 1977 ISO TC97/SC5/WG2 established.
1978/79 WG2 tries to reconcile differences between GKS and CORE.
Oct 1979 WG2 puts forward GKS to ISO (GSPC disbanded - ANSI XH3 formed).
1980 Major technical review of GKS.
GKS on ISO work item.
1981 Two further major technical reviews. All technical issues
thought to be resolved.
GKS on ISO draft proposal.
Jan 1982 GKS 7.0 published. ANSI vote NO !
July 1982 Another technical review - agreement again reached.
Dec 1982 GKS 7.2 published. ANSI vote YES.
GKS on ISO draft standard.
1983 Language bindings (BASIC, FORTRAN) Metafiles. 3D.
GKS - BASIC PHILOSOPHY
So user Specifies
(a) picture on abstract device
(b) mapping of abstract device
-> one or more physical devices
Primitives may be grouped into segments for:
Facility for long-term storage of graphical information, and for transfer
between graphics systems.
Three modes: REQUEST/ SAMPLE /EVENT
A feature of GKS is the extensive set of data structures that describe
the precise state of a GKS program.
e.g. current window
current polyline index
current character height
Inquiry functions give the user access to these data structures.
GKS is organised in a level structure according to the capability of an
Output level 0 : minimal output
1 : full output with 'device' segments
2 : full output with 'd-i' segments
GKS is a functional description of a computer graphics system
In Number of points (2 .. n) I
In Coords of points WC n x P
Effect: A sequence of connected straight
lines is generated .....
Annex C gives rules for expressing abstract functions and data types in
the constructs of a particular language.
(1) All functions (except inquiries) atomic to application.
(2) Identities for each function.
(3) Data type for each GKS data type.
(4) How function is invoked, how parameters are passed.
Language binding sponsored by DIN. Proposal currently out for comment.
Aim to have one 'international' Fortran binding.
(i) Fortran 77.
(ii) Subroutine library approach contract with Basic.
(iii) Subroutines - not functions.
Conflict between readability and the use of an abbreviation algorithm.
Consensus for abbreviation algorithm - but work hard for good abbreviations.
Six characters is a problem !
String Input: CHARACTER*(*) [, INTEGER]
Output: CHARACTER*(*) ,INTEGER
Array of points 2 REAL ARRAYS
(e.g. name of workstation
Enumeration type INTEGER [0,1,..N-1]
(e.g. interior fill area style + use of PARAMETER
Data record INTEGER
+ m/c dep routines for packing/unpacking
integers, reals, characters
Major problem + long parameter lists DIN have followed 1-1 Mapping
principle, even for inquiry routines.
INQUIRE CURRENT SETTING OF PRIMITIVE ATTRIBUTES
GQCSPA (ERRIND, POLYLI, .....) 16 parameters !
What to do:
(i) divide into a number of subroutines
[already too many inquiry functions!]
(ii) select subset
GQCSPA (K. ERRIND, I,A,C)
Kth element of list [clumsy]