BRITISH COMPUTER SOCIETY - FORTRAN SPECIALIST GROUP


Minutes of AGM held at BCS Headquarters on Monday 6 April 1981



Present:        G Harding (Chairman)       ECMWF

P A Clarke                 Rothamsted Experimental Station

J L Dyke                   Huntingdon Research Centre

J Roberts-Jones            Liverpool City Council

B Meek                     Queen Elizabeth College

D Muxworthy                Edinburgh University

M Nunn                     C.C.T.A

G A Ruscoe                 D L B S S Ltd

D M Vallance               Salford University

T L Van Raalte             MOD

A Wilson                   ICL

J D Wilson (Secretary)     Leicester University


1.    Apologies for absence


      None.


2.    Minutes of previous meeting [2 February 1981]


Page 2, item (iii) amended to omit:

"(i.e. PARAMETER, COMMON, DIMENSION be combined)".


The minutes were then accepted.


3.   Matters arising


All covered by the agenda for this meeting.


4.   Election of Officers


Gary Harding resigned as Chairman. The Group thanked him for

his work during his period of office.


John Wilson was proposed for Chairman by Gary Harding, seconded

by P A Clarke. There were no other proposals and J D Wilson

was elected by a unanimous vote.


John Roberts-Jones agreed to stand as Treasurer again. He

was proposed by D Muxworthy, seconded by B Meek and elected

unanimously.


David Vallance was proposed as Secretary by J D Wilson,

seconded by G A Ruscoe and elected unanimously.


T L Van Raalte was proposed as Vice-Chairman by B Meek,

seconded by D Vallance and elected unanimously.


Gary Harding resigned from the Steering Committee owing to other

commitments.


At this point the new chairman and secretary assumed their duties.


5.   Treasurer's Report


The treasurer made an informal progress report as the formal

report was not due until the next meeting.


The general costs of mailing and BCS services were discussed

in relation to the level of financial support from the BCS.

(There are approximately 130 people on the mailing list.)


It was agreed that the £2 charge for group membership for

non-BCS members should not be increased.


6.   FORTRAN Forum


The date for the Forum is Monday October 12, 1981. Edinburgh

University are holding a similar event on Wednesday 14 October 1981

for the benefit of those from the north of England and Scotland

who would find in difficult to get to London. The two events

will attempt to share publicity.


Brian Meek was thanked for his success in booking a room

provisionally at the University of London Institute of Education.

This booking will be formally confirmed after July when the

Institute agrees charges for the next session.


The Elvin Hall (seating at least 150) has been booked for the

meeting (current charge £85) and the Jeffrey Hall (current charge £55)

for lunch. These charges are expected to increase by about 10%

after July. The Elvin Hall has very good audio-visual facilities,  Action:

should these be required.                                          J D Wilson


Third party liability had not been discussed. The Chairman

will ask the BCS to write to the Institute of Education and

confirm that we are covered by the BCS's insurance.


It was agreed that any institutional member of the BCS could

send any number of delegates to the forum at the rate for BCS

members.


An attendance of 100 was estimated - the actual cost per

delegate will not be available until the booking is confirmed

in July.


D Muxworthy stated that at least 4 X3J3 members are interested

in attending from the USA. There might ultimately be as many

as 10.


The morning of the Forum will be devoted to speakers who are

Fortran 77 users; the afternoon will allow X3J3 to discuss

their current work.


Mike Metcalf (CERN), Rex Gibson (Weather Centre) and John          Action:

Larmouth (Salford University) were to be approached as possible    J D Wilson

speakers.                                                          G Harding

                                                                   D M Vallance


The possibility of approaching Computer Weekly for support

was discussed.


A working group consisting of the Chairman, D Muxworthy (who

will liaise with X3J3), Alan Wilson, Gary Harding, T L Van Raalte

and John Roberts-Jones was set up to organise the Forum.


D Muxworthy will draw up a draft programme.                        Action:

                                                                        D Muxworthy


J Roberts-Jones will estimate the cost of publicity based on       Action:

the previous Forum.                                                J Roberts-Jones


The Chairman will investigate the catering charges.                Action:

                                                                        J D Wilson

Initial publicity will be distributed as soon as possible.


Alan Sutcliffe of the BCS will be informed of the proposed         Action:

forum at the meeting of the Specialist Groups Committee on         J D Wilson

14 May 1981.


7.   Future meetings of the Group


The following dates were agreed for future meetings:

 1 June 1981

 7 September 1981

12 October 1981      FORTRAN FORUM

30 November 1981     Possibly at University of Salford

 1 February 1981

 5 April 1982        AGM


The Chairman will contact John Murchland as a possible speaker     Action:

for 1 June. The secretary will contact David Law (NCC) as a        J D Wilson

possible speaker for September. Alan Wilson will approach          D M Vallance

Professor Parkinson at the QMC DAP Centre regarding a possible     A Wilson

meeting there at which Professor Parkinson would speak in the

afternoon.


8.    BCS Business


Members have been asked for recommendations for distinguished

or honorary fellows of the BCS. Such recommendations should

be sent to the Chairman or Secretary of this Group.


Gary Harding reported from the recent meeting of the Specialist

Groups Board. Two new groups have been affiliated: Computing

in Psychology and the Eurographics Association. Changes have

been proposed in the byelaws regarding specialist groups which

will be discussed at the next meeting of the Board.


9.   Report from March meeting of X3J3 at Austin, Texas


Alan Wilson reported on the last X3J3 meeting but noted as

he himself was heavily involved in array processing discussions

his notes were unfortunately brief.


The macro facility had been discussed again as had precision

proposals. The question of how subprograms could be compiled

in a variety of forms was still unanswered.


The concept of independent compilation is still in conflict

with GLOBAL.


Walt Brainard has produced a composite document X3J3/S6 'Proposals

approved for Fortran 8X' which will be updated as new proposals

are approved.


10.   ISO Programming Languages Meeting


Brian Meek reported that the BCS standards committee had put

forward a request for substantial sponsorship for the meeting.

The Chairman was asked to write to the BCS Secretariat

recommending support.


A £50 contribution from the Fortran Specialist Group funds

was proposed by A Clarke, seconded by G A Ruscoe and agreed        Action:

unanimously.                                                       J Roberts-Jones


11.   Any Other Business


Salford University are holding a 1-day seminar entitled

'Experiences with Fortran 77' on Monday 8 June 1981. The

fee (£16.50) includes coffee, lunch and a copy of a newly

published Fortran 77 textbook. The speakers include Alan Wilson

and John Larmouth. Full details are obtainable from

Mrs Roberts, Short Courses, Registrar's Department, University of

Salford, Salford M5 4WT.


Mr Wigg has produced a program to analyse the structure of a

Fortran program and is anxious to find a Fortran user, preferably

in the South East, who might be interested in assessing its

usefulness. Those interested are invited to contact him at


72 Brattle wood

Sevenoaks

Kent

TN13 1QU Tel: (evening) 0723 - 55446


Afternoon Session


FORTRAN 8X ARRAY PROCESSING PROPOSALS - ALAN WILSON, ICL


Appendix A of these minutes is a summary based on an article

written by Mike Metcalf in CERN Newsletter 155.




APPENDIX A            FORTRAN 8X ARRAY PROCESSING PROPOSALS


There is a clear need in mathematical programming language to provide

a simple means of manipulating vectors and arrays. This need will grow

with the increasing use of vector processors. The discussions on which

facilities to provide are far from complete, but seem to be working towards

one set of basic features to be incorporated into the core, and a further

set to form part of a language extension.


Basic array processing


The operations and intrinsic functions are extended to apply to whole

arrays on an element-by-element basis, to produce a result of the same

shape (dimensionality and dimension size) as the operand(s). For

operations involving two operands, the operand arrays must be conformable

(of the same dimensions), but a scalar is defined as being conformable

to all arrays, and is 'broadcast' as necessary. A combined example is

thus.


DIMENSION A(20,10),B(20,10),C(20,10)

.

c=3.*A*SQRT(B)


The WHERE statement and WHERE block allow testing on an element-by-element

basis:


WHERE (B.NE.0) C=A/B

 OTHERWISE

  C=A

  B=EPSILON(X) ! EPSILON is an environmental enquiry function

END WHERE


In order to permit the addressing of array sections a new, as yet

unspecified symbol, is introduced (here '*' is used). It permits, for

example, the columns and rows of a two-dimensional array to be selected

in the following manner, where the minus sign indicates that the elements

are to be taken in reverse order:


using   DIMENSION A(-4:0,7)   !   FORTRAN 77 array notation


then    A(-3,*)       selects the second row of A

        A(*,3)        selects the third column of A

        A(-1,-*)      selects the fourth row of A, backwards.


A triplet notation similar to DO-loop parameters will permit references

to non-contiguous elements of an array:


A(0:-4:2,1:7:2)        selects in reverse order every second element

                                of every second column.


Extended array processing


This topic would require a great deal of space to develop, and this

summary is necessarily brief. The following lists of proposed functions

should just serve to give a feeling for the present ideas.


a)      Intrinsic functions return scalar values from arithmetic arrays:

                SUMN, PROD, MAXVAL, MINVAL, DETERMINANT, DOTPROD


        and from logical arrays


                COUNT, ANY, ALL.


b)      Informative functions return the


                RANK, EXTENT, SIZE, LBOUND, UBOUND


        of an array.


C)      Generative operators fill a vector with a


                SEQuence of numbers, defined by 3 DO-loop like parameters

                ALTernate sequences of .TRUE. and .FALSE. values, where

                            the number of sequences and lengths are

                            specified by 3 parameters.


        In the case of array it is possible to


                SPREAD values into an array of higher dimensionality

                REPLICATE them within an array

                MERGE 2 arrays according to the logical values of

                          third array

                DIAGONAL i.e. produce a unit matrix.


d)      Shift operators can perform


                EOSHIFT (end-off) and

                CSHIFT (circular) shifts.


e)      Finally, matrix operations such as MATMUL, INVERSE and TRANSPOSE

        are proposed.