ISO/IEC JTC/SC22/WG5 N1926 Minutes of Meeting of ISO/IEC JTC1/SC22/WG5 Hosted by SCC, the Canadian Member Body for JTC1/SC22 IBM Toronto Laboratory, Markham, Canada 25 - 29 June, 2012 List of Participants: John Reid (JKR Associates, UK) convenor (Tuesday - Friday) Dan Nagle (NCAR, USA) PL22.3 chair Reinhold Bader (Leibniz Supercomputing Centre, Germany) (Tuesday - Friday) Daniel Chen (IBM, Canada) Malcolm Cohen (NAG, UK) Robert Corbett (Oracle, USA) Steve Lionel (Intel, USA) Bill Long (Cray, USA) Nick Maclaren (University of Cambridge, UK) Lorri Menard (Intel, USA) Toon Moene (Gnu Fortran, Netherlands) Masayuki Takata (Edogawa University, Japan) WG5 papers are referenced as Nnnnn. They are available from ftp://ftp.nag.co.uk/sc22wg5/ INCITS/PL22.3 is abbreviated throughout to PL22.3 and its papers are referenced as 12-nnn. They are available from http://www.j3-fortran.org/ 1. Opening of the Meeting The meeting was opened by the acting convenor at 09:00 on Monday 25 June 2012. 2. Opening business 2.1 Introductory remarks from the Convenor Malcolm Cohen, acting as WG5 convenor on Monday only due to the unavoidable absence of John Reid, said that the main objective of the meeting was to develop the requirements for the proposed Technical Specification on further coarray features. Secondary objectives were to complete and approve the vulnerability annex for WG23, and to process interpretations for Fortran 2008. 2.2 Welcome from the Host Daniel Chen welcomed participants to IBM Canada. 2.3 Local arrangements The host explained the meeting room and dining arrangements. Additional events are a tour of the IBM Canada Markham facility after the meeting on Tuesday, and an evening dinner for participants on Wednesday. 2.4 Appointments for this meeting The drafting committee will be Masayuki Takata (chair), Reinhold Bader, Daniel Chen, Nick Maclaren, Toon Moene and Dan Nagle. The librarian will be Malcolm Cohen on Monday, and John Reid thereafter. The secretary will be Malcolm Cohen. 2.5 Adoption of the Agenda (N1899) The preliminary agenda, with the corrections noted below, was adopted. The item under 10. WG5 Business and Strategic Plans should read 10.1 Goals for 2012-2014 The items under 11. Closing Business should read 11.1 Future meetings 11.2 Any other business This was followed by PL22.3 opening business 5.5 Liaison Reports: INCITS/PL22.11 (C): Craig Rasmussen No report (Craig Rasmussen is not attending this meeting). MPI: Craig Rasmussen No report (Craig Rasmussen is not attending this meeting). UPC: Dan Nagle No information was to hand. OpenMP: Matthijs van Waveren No information was to hand. WG23 (Vulnerabilities): Dan Nagle Several language-specific annexes have been published; a new draft of the potential Fortran annex has been prepared. Where a language is under the control of an SC22 working group, WG23 will only accept an annex from that working group. 6. Consider the technical content of the proposed TS on Further Coarray Features. There was a presentation by Bill Long on items for the proposed TS, with discussion on the desirability or otherwise of particular features. No votes were taken at this time. The meeting adjourned at 17:00. .................................................................. Tuesday 2.6 Approval of the minutes of the Garching 2011 Meeting [N1860] The minutes of the previous meeting were approved. 3. Matters arising from the minutes There were no items not otherwise on the agenda. 4. Status of Garching 2011 Resolutions [N1861] The first corrigendum has been approved by SC22, and publication is imminent. 5. Reports 5.1 SC22 Matters We met the deadline for the Further Interoperability with C TS, and voting has started on that; it will end on the 26th August 2012. There has been a suggestion to eliminate the CD stage of processing of standards, to make things quicker. John Reid and Dan Nagle were both concerned about this as the CD stage is where country comments are collected to decide on the final technical content of the standard. (It is possible that the FCD stage would remain, the suggestion is unclear.) There was a short discussion about the desirability and potential consequences of this possibility. The next SC22 meeting is in September. 5.2 National Activity Reports Canada: The languages committee meets every 3 months. There is not a lot of activity within this committee as most of the Fortran people are within IBM. Germany: There is not a lot of Fortran standards activity in Germany. Japan: N1920 is the Japanese National activity report. The major topic is the translation of Fortran 2008, they are working on technical terms now and will take at least 2 more years to finish. Netherlands: Fortran standards matters are dealt with by the general programming languages committee, which meets twice a year. UK: The activity report is in N1922. The BSI Fortran panel operates by email. Congratulations to Malcolm Cohen for receiving the IEC 1906 award. USA: PL22.3 meets three times a year, usually in Las Vegas. Recent technical work has been on the Further Interoperability with C TS, interpretation requests, and investigating technical features for the putative Coarray TS. 5.3 Report from Primary Development Body (INCITS/PL22.3) Some members would like to engage in substantial new work items, but the committee is not in consensus. 5.4 Reports from other Development Bodies (Editors/Heads) Interoperability TS: Bill Long The draft TS is in its final vote at the moment. Coarray TS: Bill Long There are no contents for this TS at present, as we are still developing the requirements. 8. Construct a draft Fortran annex for the TR on "Guidance to Avoiding Vulnerabilities in Programming Languages through Language Selection and Use". There was a presentation by Dan Nagle on the purposes and approach of the WG23 Technical Report. TS 24772 is not a coding standard, but is intended to contain advice for people who are drawing up coding standards. A straw vote was taken on whether there should be a Fortran annex to this Technical Report; the result was 8 yes - 1 no - 3 undecided. A subgroup consisting of Dan Nagle, John Reid, Masayuki Takata and Malcolm Cohen will process the current draft of this proposed annex during the meeting. 6. Consider the technical content of the proposed TS on Further Coarray Features. There was a further presentation by Bill Long on items for the proposed TS, with further technical discussion on features presented on Monday. At the end of the technical discussion John Reid led a discussion on the overall size of the TS. A short presentation by Malcolm Cohen on how the TS could fit into a revised WG5 Strategic Plan suggested that the complexity of the TS should be limited. It was suggested that items that were too complicated for the desired size of the TS could be developed independently for potential inclusion in a future revision of the Fortran standard. No vote was taken at this time. A series of straw votes was taken on the technical contents of the proposed TS as follows; most of these were 4-way votes with the choices being - in the TS now, - defer to the next revision of the Fortran standard, - never include the feature, - undecided. Collective subroutines: 10 - now, 0 - defer, 0 - never, 2 - undecided. A subsequent straw vote on whether these should be image control statements was 7 - yes, 4 - no, 1 - undecided. Atomic operations were divided into three groups: (1) compare and swap, add, bitwise and, bitwise or, bitwise exclusive or; (2) swap; (3) combined bitwise exclusive or and bitwise and. Atomic operations group 1: 11 - now, 0 - defer, 0 - never, 1 - undecided. Atomic operations group 2: 2 - now, 0 - defer, 0 - never, 10 - undecided. Atomic operations group 3: 2 - now, 2 - defer, 1 - never, 7 - undecided. There are two competing models for "teams", one being the "partition model" where partitions (teams) are formed by splitting an existing partition (team) and image numbers are all team-relative, and the other being the previously-described "team model" where teams are formed by listing the participating images. Separate straw votes were taken on each approach. Teams - "partition model": 9 - now, 2 - defer, 0 - never, 1 - undecided. Teams - "previous team model": 0 - now, 6 - defer, 4 - never, 2 - undecided. In a discussion of how to integrate teams into the language, there was a general consensus that this would be best done by having the use of teams be scoped by syntactic constructs. For events, the proposals were divided into two: the most basic feature ("simple" events) being simply to send/wait/query on events, and the more advanced events including "put with notify". Two straw votes were taken on the technical details: (1) Should simple events be image control statements? 11 - yes, 0 - no, 1 - undecided (2) Should advanced events be available? 3 - yes, 1 - no, 8 - undecided. Following this an overall straw vote on desirability was taken on simple events: 10 - now, 0 - defer, 0 - never, 2 - undecided. Two straw votes were taken whether to include parallel I/O facilities: (1) for direct access files: 6 - now, 3 - defer, 0 - never, 3 - undecided. (2) for sequential access: 3 - now, 6 - defer, 1 - never, 2 - undecided. Finally a straw vote was taken on whether to include copointers: 0 - now, 6 - defer, 4 - never, 2 - undecided. Following these straw votes the meeting divided into three subgroups /HPC: to develop the coarray TS proposals in light of these straw votes; /JOR: to develop the vulnerabilities annex for WG23; /INTERP: to process defect reports on Fortran 2008. On reconvening, Bill Long reported on the progress made in resolving the more undecided issues from the straw votes; a revised requirements paper is being developed. Dan Nagle reported on the progress made on the vulnerabilities annex; a new draft is available on the J3 server. Malcolm Cohen reported that the /INTERP subgroup were about halfway through processing the results of the letter ballot that ended just before the meeting, and expected to need two more subgroup sessions to finish this and to process the new defect reports for this meeting. The meeting adjourned at 17:00 for a tour of the IBM Canada Markham labs. .................................................................. Wednesday. 6. Consider the technical content of the proposed TS on Further Coarray Features. There was a presentation by Bill Long on the technical details of events. Two different kinds of events are widely available: LOGICAL, and INTEGER (most systems have both). Event operations are POST, CLEAR, TEST, and WAIT; for a LOGICAL event, a POST operation on an event that has already been posted is a either a null operation or an error. sv Logical/Integer/Both/Undecided? 0-11-0-1. 7. Consider the Fortran defect reports (interpretations) in J3-006. The results of the recently-concluded J3 letter ballot on interpretation requests were announced: 28 passed unchanged, and 13 passed with minor amendments. It was agreed to have a WG5 letter ballot with the 41 that passed shortly after the meeting, and to aim for producing a Corrigendum 2 within the year. 12.1 Future meetings A discussion was held as to whether to meet in London in 2014 or 2015; a straw vote was inconclusive: 4 - 2014, 3 - 2015, 5 - undecided. 8. Construct a draft Fortran annex for the TR on "Guidance to Avoiding Vulnerabilities in Programming Languages through Language Selection and Use". The revised draft of the Fortran annex, which will become N1929 when complete, was presented and discussed. 6. Consider the technical content of the proposed TS on Further Coarray Features. Bill Long reported that further progress had been made on developing the requirements, and that subgroup now strongly recommended that collective subroutine references not be image control statements (the previous straw vote being in favour of them being such). After discussion, it was agreed that this was acceptable but that a reference to a collective subroutine should not be permitted in places where an image control statement would not be permitted. .................................................................. Thursday 10. WG5 Business and Strategic Plans The convenor drew the meeting's attention to the draft of his upcoming report to SC22 and requested input. 10.1 Goals for 2012-2014 Revision of the strategic plan was discussed considering the UK position paper N1923. It was agreed that we should aim to produce a TS on further coarray features as soon as possible, and to produce a revision of the standard that consolidates the two Technical Specifications, corrigenda and editorial improvements approximately two years after that. This revision would concentrate on consolidation and removal of small inconsistencies in existing features and their interaction, and not add any large new features. 5.5 Liaison reports IFIP/WG2.5: Van Snyder The IFIP WG 2.5 liaison report, document N1931, was briefly discussed. 6. Consider the technical content of the proposed TS on Further Coarray Features. Further discussion was held on the technical requirements for this TS. It was agreed that the connection of the standard input file to image 1 needed to be clarified as applying to image 1 of the initial team. For the collectives, it was agreed that execution of a collective should be required to be the same statement on each participating image. A straw vote on whether the atomic compare-and-swap subroutine should be abbreviated to CAS or spelled out in full was taken, with the result being 6 - CAS, 4 - COMPARE_AND_SWAP, 2 - undecided. A short discussion decided on the name for the proposed TS. 9. Decide whether a publicly available Fortran 2008 module could provide an adequate replacement for the functions of Part 2 of the Fortran Standard that are not available in Part 1. The issues regarding ISO/IEC 1539-2 were considered by a subgroup consisting of John Reid and Dan Nagle; they reported that (i) changing a program that used the iso_varying_string module to use the F2003 features instead was non-trivial; (ii) John Reid's experimental version of the iso_varying_string module that used the new features appeared to be successful, but that significant work would be required to bring it up to publishable standard. Given that the varying string part (1539-2) has been confirmed as a standard by ISO for the next 5 years, subgroup recommended that no further action be taken on this issue at this time. 8. Construct a draft Fortran annex for the TR on "Guidance to Avoiding Vulnerabilities in Programming Languages through Language Selection and Use". A new revision of the draft annex was produced and comments requested. 12.1 Future meetings A further discussion was held; it was generally agreed that it was desirable to alternate between North America and elsewhere, and that therefore that assuming the 2013 meeting in Delft went ahead as planned, the 2014 should be in Las Vegas and the 2015 meeting should be in London. For 2014, the proposed dates are 23-27 June. .................................................................. Friday The meeting began with a final discussion of the Strategic Plan and the draft Resolutions. 6. Consider the technical content of the proposed TS on Further Coarray Features. Bill Long led a discussion of the latest draft of the requirements document for the proposed TS; the agreed result is document N1930. 8. Construct a draft Fortran annex for the TR on "Guidance to Avoiding Vulnerabilities in Programming Languages through Language Selection and Use". Dan Nagle led the discussion. All comments received have been incorporated into the document N1929 for letter ballot after the meeting. 12. Adoption of Resolutions (N1927) Resolutions M1, M2, M3, M11 and M12 were approved by unanimous acclaim. Resolutions M4, M5, M6, M7, M8, M9 and M10 were approved by unanimous consent. 13. Adjournment John Reid thanked the local host again for the excellent support during the week. The meeting closed at 11:41 on Friday, 29th June, 2012.