ISO/IEC JTC1/SC22/WG5 N1291 Minutes of Meeting of ISO/IEC JTC1/SC22/WG5 July 21-25, 1997 Technische UniversitŠt Wien, Prechtl-Saal Karlplatz 13, Vienna, Austria 1. Opening of the meeting The convenor (Miles Ellis) opened the meeting at 9.00 am on 21st July 1997 and asked the members to stand in silence in memory of Brian Meek (UK), who was a member of WG5 and SC22 for many years and who had died unexpectedly a few days before the meeting. He then welcomed the attendees and gave a brief overview of how he saw the main business of the meeting. The full list of those attending is contained in N1289. 2. Opening Business 2.1 Introductory Remarks from Convenor The convenor gave a more detailed view of the timetable for the meeting remarking that it was difficult at this stage to estimate how much subgroup time would be required for the different issues but that things would become clearer as the meeting progressed. 2.2 Welcome from the hosts The host, Gerhard Schmitt, welcomed the attendees to Vienna and to the Technical University and indicated that an interesting program of social events had been planned. 2.3 Local Arrangements Gerhard Schmitt described various local arrangements. 2.4 Appointments for this meeting Steve Morgan was appointed secretary for the meeting and Keng Low was appointed document librarian. David Muxworthy (Chairman), Gerhard Schmitt and Jerry Wagener were appointed as the Drafting Committee 2.5 Adoption of the Agenda The agenda was adopted by unanimous consent 2.6 Approval of the minutes of the Las Vegas Meeting [N1262] The minutes of the previous meeting were accepted without correction. 3. Matters arising from the minutes Jerry Wagener raised the issue of the subgroup recommendations mentioned on Page 2.4 of the Las Vegas minutes regarding Interval Arithmetic. The convenor deferred this issue to agenda item 6.2. Malcolm Cohen pointed out that there were incorrect references in the minutes concerning inheritance/polymorphism. It was agreed that the minutes of this meeting should reflect that in N1259 the 2nd reference to N1272 should have been to N1295. It was noted that numbering of sections of the minutes of the meeting would be useful. 4. Status of Las Vegas Resolutions [N1261] LV2F90 binding to GKS. This project had been cancelled by JTC1, but it was understood that it was currently being processed as a Technical Report under ISO procedures. LV3There had been a delay in the final processing of the Fortran 95 DIS due to the incorrect French title provided by ITTF. This has now been resolved and the final text was sent to ITTF in June for publication. LV4The Interoperability with C PDTR is currently being balloted (ending Sept 11th). There were no technical or procedural issues. LV8The letter ballot resulted in a vote to continue with the project.. LV10 The next meeting would be in Sweden. Details would be discussed under 9.1 5. Reports 5.1 SC22 Matters The convenor noted that JTC1 was reviewing its electronic distribution procedures. New rules might require some WG5 documents to have restricted access controlled by password. This would apply to all documents above and including CDs. Other documents can be distributed freely. The preferred method of publication was via WWW/HTML. Acrobat/PDF was preferred for documents to be printed. Postscript was not recommended. To use a format not on the JTC1 list, permission had to be sought from JTC1 via SC22. 5.2 National Activity Reports AustriaThere was no written report. Gerhard Schmitt reported that no meetings of the Fortran group had been held in the last year. FinlandPetri Mahonen reported that there had been several meetings with attendance of 12-13. The Fortran 90 standard had been published in Finnish. GermanySee N1296 JapanSee N1292 UKSee N1293 USSee N1284 5.3Report from Primary Development Body Jerry Wagener referred to paper N1294. J3 required guidance on some aspects of the Fortran 2000 requirements. He noted that interpretations were not on the development plan and that there were some interpretations outstanding from Fortran 90. Overall the work was on schedule. 5.4 Reports from Development Bodies TR on Floating Point Exception Handling (John Reid) The document had been revised at the end of June and was now 'ready to go'. TR on Enhanced data Types N1275 (Malcolm Cohen) Only one comment had been received which resulted in very little change to the document. TR on Interoperability with C N1237 (Michael Hennecke) There had been substantial comments which needed processing. The project editor needed help from J3. A document detailing the comments would be produced by the end of the meeting. Conditional Compilation (David Epstein) An editing group had been formed which had made good progress in responding to the comments from the Las Vegas meeting. N1283 was the result. ISO 1539-2 Varying String (Steve Morgan) A paper from Lawrie Schonfelder (N1297) would be put on the table. This gave suggestions for changing the normative part of the standard to take advantage of new features in Fortran 95. 5.5 Liaison Reports There were no reports. 6. Technical Items Five subgroups were formed: Interval Arithmetic (Baker Kearfott), Varying Strings (Steve Morgan), Interoperability with C (Michael Hennecke), Conditional Compilation (David Epstein) and Electronic Document Distribution (Miles Ellis). These groups met throughout the week at various times. Results of these are recorded where appropriate under the relevant Agenda item. 6.1 Completion of WD 1539-3 (Conditional Compilation) [N1283] [Scribe: John Reid] Meissner: What are the outstanding issues and what has been done recently? Epstein: There are no outstanding issues. All comments that we have received have been addressed. An important recent change is the introduction of the SET file, which means that no changes to the source file should ever be needed to make particular versions. Reid: Another important change is that the concept of intermediate output of Fortran has been introduced. This makes what happens much easier to explain and easier to understand, though it is still hoped that actual implementations will integrate coco processing into the compiler. Of course, coco processing could also be done with a separate pre-processor. Epstein: Such a pre-processor is under construction and will be in the public domain. Following the discussion the convenor summarised by asking all members to look at N1283. The issue would be dealt with Wednesday a.m. David Epstein reported that the subgroup had discussed the issue of INCLUDE and that ??INCLUDE would be added to the document. Thursday Plenary: David Epstein reported that a major change on P7, 3.3 re INCLUDE had been made. There was some discussion on MESSAGE The document would be reviewed by J3. If there were significant changes required then two CD ballots would be required. If only trivial edits were required then it could go straight to a final CD ballot. First CD ballot is 3 months + 14 days. Final CD ballot requires 4 months + 14 days, plus co-ordination with the JTC1 timetable. 6.2 Fortran 2000 6.2.1 Interval Arithmetic [Scribe: Baker Kearfott] J3 had requested WG5 to clarify the position regarding optionality of this feature. A straw vote taken at Las Vegas had been 24-5 in favour of Interval Arithmetic being optional in Fortran 2000 but no guidance as to the exact nature of optionality had been given. Subsequent discussions in J3 had indicated that there were several possible paths for optionality. Convenor: Recalled that 'optional ' meant that it became Part 4 Wagener: Gave example that Part 1 allows quad precision, so optionality does not necessarily imply that it has to go in Part 4. Meissener: Agreed. J3 needs precise guidance. Cohen: Agreed with Wagener. Hennecke: Recalled that question had been whether we do it as intrinsic data type or as a module Reid: We already have a mechanism for making it optional so let's use it. Bierman: We should re-visit whole question of whether we want this feature in Fortran 2000. Walter: This was a firm requirement in Las Vegas so we shouldn't re-visit. Meissner: Agreed - unless there was overriding reason, we should not re-visit. Kearfott: Agreed Morgan: Also recalled that optionality meant feature should be done as Part 4 Meissner: We are not ready to decide what optionality is. Ellis: Summarised discussion. Meissner: Summarised discussion Bierman: We never intended that we could not remove something from F2000 requirements. We should re-visit Ellis: It would not be appropriate for WG5 to do this. J3 would have to request it.. Wagener: Discussed forms of optionality Snyder: Could do mixture of putting in Part 1 and allow module to be written Hennecke: Topics from R list cannot be removed Kearfott: Listening with interest... Meissner: WG5 for sufficient reasons is still able to remove or add requirements Ellis: Summarised, adding that a form of resolution that reflected the discussion was needed. This would be better done in subgroup. A subgroup met and reported back to the plenary. There had been agreement (10-3-1) that IA should be optional in the standard and agreement (10-1-3) that we should continue with the IA requirement for F2000. The issue of whether optionality should be implemented as Part 1 or Part 4 was less clear. A vote on whether optionality in Part 1 should be explored was (8-1-5) and one in which optionality should be implemented as Part 4 was (6-2-6). Plenary 2:45 p.m. Thursday: A lengthy discussion took place on optionality. Wagener: Wanted meeting to note that J3 might not accept the work if Interval Arithmetic was required to be put into Part 4. Part 4 would require the formation of a development body (strategic plan) and J3 might decide not to take this on. Ellis: Supported this position. Country straw vote: I.A. may be optional 4 I.A. must be optional 2 Undecided 1 UK raised the issue Part 1 versus Part 4 for I.A. Wolfgang Walter presented a paper which was intended to give detailed technical guidance to J3 on how I.A. should be implemented. Walter: Paper V15, presented by DIN gives definite steps, but not prescriptions, for inclusion of interval arithmetic in Fortran 2000. It is meant merely as input to J3's process. Two transparencies from yesterday were presented, including a list of desirable items and a diagram of how intervals can be included ÒorthogonallyÓ to existing data types. The transparency listing desirable features is used as a guide in the subsequent discussion. 1.A straw vote on whether Ò[Ò and Ò]Ó should be a part of the Fortran character set was recommended. The straw vote was to be reformulated because of concerns expressed about the use of the code points for Ò[Ò and Ò]Ó for different national characters in ISO 646. 2.It is desirable to implement the interval data type via Fortran keywords: Add an INTERVAL keyword to existing data types. Bierman:It will not correspond to existing practice by the time the standard ships. Walter: 3.A list of operators is presented. A question is: will these relationals be introduced with other than lowest possible priority (default derived operator priority)? Meissner: New operators, could be introduced without invalidating existing code if they started with something other than Ò.Ó (for example, with #). Cohen: What new operators will be of sufficient importance to take the risk of invalidating existing code? Straw vote:Can we ever add operators with non-default priority, with a Ò.Ó name that looks like a defined operator? yes: 12 no: 5 undecided: 4 Straw vote:Would new operators for interval arithmetic qualify for this non-default priority? yes: 10 no: 3 undecided: 8 Friday, July 25 Walter: Runtime semantics should be distinguished from compile-time optimizations. There are two models for interval arithmetic, the set theoretic definition and the functional definition. In the set-theoretic definition, intervals are defined through formulas as operations on sets. In the functional definition, the interval value of an algebraic expression is viewed as a bound on its range. The set-theoretic definition may give wider intervals because of assumed dependency. Diagrams of intervals, and set notation diagrams were used on a transparency to illustrate the concept of dependency. If the functional definition and set-theoretic definition are separated into compile-time and runtime stuff, it will be clearer. Hirchert: Perhaps the only definition should be the functional definition, to allow the processor leeway [, since it is conceivable that someone would want to implement the functional definition at run time, say, by carrying a pointer to a symbolic computation along with each datum]. Walter: There is a fundamental problem to this approach. You need to give some definitions to the operators, and the functional definition is not really a precise definition. Hirchert: Not true. Bierman: We shouldn't invent things on the fly at WG5 meetings. The difference is not between runtime and compile time, but is more fundamental. It is more appropriate to say Òthis is a problem J3 should address.Ó The question WG5 should answer is: should J3 consider the functional definition or not? KŸster: The problem with Wolfgang's example is that it is too simple. More complicated examples show different results with different optimization, but that's not really the problem. The two ideas are not in competition. The fallback technique is the set-theoretic model, and the other formulation could be used by the compiler. Bierman: The question should be Òif J3 were to define an interval arithmetic mechanism using the set theoretic definition only, would that be acceptable to WG5?Ó Most users want a fast, accurate result most of the time, and only seldom desire total predictability and control. Cohen: I'm disturbed by this overly simplified transparency, discussed Friday at WG5. For WG5 to make a decision based on a 1-transparency distillation is not right. Ellis: No one is suggesting we should. Walter: I find it disturbing that there is not much progress in this area. Cohen: That's an unfair characterization of what has been happening in J3. Ellis: There is no objection to WG5 input to J3, but it depends on the nature of that input. Many WG5 members do not understand it fully enough to make any recommendation. KŸster: I'd like to make a general recommendation: that we implement a technique that ensures the results not worse than the set-theoretic model. Walter: That's not the optimum. The set-theoretic model gives the widest results. Cohen: I'd encourage Wolfgang to send this to J3. Morgan: Perhaps a resolution requesting J3 take the paper into consideration is in order. Cohen: It does not normally require such a resolution to send such a paper. A resolution implies we are endorsing the content. Morgan: No, we can word it to merely give Wolfgang a slightly stronger input. Cohen: The paper will have a champion, so we don't need a resolution. (Baker has already offered to present it.) Walter: I'd like a straw vote on, in principle, whether an extension of the character set is allowable. yes: 20 no: 0 undecided: 3 Friday 10:00 a.m. Country Straw Vote: Decide now that I.A. should be in Part 4 of the standard 2 (UK and Finland) Leave the choice to J3 5 Straw Vote: Leave last paragraph in D8 4 (drawing J3's attention to the DIN paper) Remove it 10 Undecided 9 Country Straw Vote: Delete paragraph in D8 which advises that Interval Arithmetic be developed in the base standard Yes: 4 No: 3 The convenor ruled that the paragraph should be deleted. It was agreed that Baker Kearfott would present the paper on Interval Arithmetic advising on technical implementation, provided by DIN, to the next J3 meeting. 6.2.2 Polymorphism 6.2.3 Other Technical Issues Kurt Hirchert raised the issue about allocating on derived type parameters. This was a minor enhancement which was necessary in order to support Parameterised Derived Types. He wanted to know whether WG5 approved J3 working on an MTE which had not been in the list drawn up at Las Vegas. The convenor ruled that MTEs which are considered essential in order to implement a Fortran 2000 requirement were deemed valid work for J3 to do. 6.3 Revision of IS 1539-2:1994 (Varying Length Strings) The subgroup reported that there was consensus that Part 2 should not be withdrawn and that changes proposed in WG5V7 were sensible. It was agreed that the convenor should request SC22 to extend the project to allow changes to the normative part of the standard to align it with Fortran 95. In addition members of WG5 would be requested to volunteer to review the new standard when a draft had been developed. A straw vote on the sentiments of the previous paragraph was heavily in favour, with one against. A suitable resolution would be drawn up. 6.4 Floating Point Exception Handling DTR [N1281] It was agreed that this was ready for its final ballot. 6.5 Enhanced Data Types in Fortran DTR [N1282] It was agreed that this was ready for its final ballot. 6.6 Interoperability with C The subgroup reported that 20 pages of comments had been looked at. Views from the C committee had also been considered. Wagener asked why there wasn't a development body for this work. Hennecke said that he had not had sufficient support from J3 members during the development of the document. Such support was essential if a document of sufficient quality was to be produced. Friday a.m. Wagener: Cannot commit now that J3 will do the work. Would have to ask J3 at next meeting. If WG5 asked J3 to process this requirement as a Fortran 2000 requirement then there wouldn't be a resource problem. If asked to do it as a TR then the answer would probably be NO. Bierman: I didn't want to suggest that J3 should take this on as a TR. The TR would not now come out early enough to satisfy the guidelines for TRs. Hennecke: I don't think we have to drop the TR. There has been work in J3 subgroup. Question is how to process comments. Muxworthy:From SC22 point of view, we should not abandon TR at this time with a ballot in progress. Schmitt: I don't understand why this change would help in doing the work. J3 has to include the TR in F2000 anyway. There would be nothing gained in not publishing the TR. Hennecke: There are substantial comments to process and as things stand this would have to be done by email. Walter: This is a bad time for dropping the TR. Bierman: There are a lot of substantive issues which cannot be processed by email Hirchert: When we started the TR process we set timeframes for completion. This TR has blown those timeframes by a large margin. It looks like we won't get the TR on acceptable timeframe. Convenor: The point of the TR process was to get critical features out before F2000. Due to unavoidable circumstances the TR has been delayed. It will not now be completed until late '98 or early '99. The timing should allow 2 or 3 years before the full standard. Hennecke: We can delay the decision [whether to drop the TR?] Bierman: We may not be able to make progress at the next meeting if we do not have a decision. Country Straw Vote: Request J3 to take over TR for processing as a F2000 requirement 3 (UK, US, Austria) Leave it as a TR 2 (Japan, Germany) Undecided 2 (Sweden, Finland) Later, another straw vote was taken to see if the undecideds had changed position. This resulted in a (5-2-0) vote with Sweden and Finland having changed their vote to Yes. 7. Update of WG5 Strategic Plan (WG5V3) The convenor noted that V3 was essentially N1151 with 4.3 modified to reflect new schedule from Las Vegas and with Annexe A deleted. Wagener summarised the document and noted that it had proved useful but now needed updating. The convenor agreed. Thursday Plenary Convenor ran through changes that had been made. Section 3.4 - bit about ISO revision cycle had been removed. WG5 will set target date which will be between 5 and 10 years. Some specific parts removed to form new standing documents. Some discussion took place about whether Parts of the standard ought always to be optional. Several straw votes were taken on changes to N1151 Straw Vote: Leave document as it is 10 Words Òby defaultÓ placed after 1st paragraph of 3.5 6 Undecided 7 Straw Vote: Should schedule be based on ... 15 Should schedule be changed 3 Undecided 6 Straw Vote: Should add in two missing lines of schedule in V3/P5/4.3 13 (ÒInitial requirements preparedÓ and ÒReview of requirements completedÓ) Leave as it is 1 Undecided 8 Straw Vote: Each stage should contain spec of number of months expected 11 Cumulative time for each stage 8 Undecided 3 Friday a.m. Hennecke: We should have a separate document for the timetable. Convenor: Agreed. Will circulate document for comments. 7.1 Business Plan and Convenor's Report to SC22 The convenor asked for input for his report. Members noted that the Fortran market was worth 5 billion dollars worldwide. Many critical applications were using Fortran: FE, weather forecasting, Simulation, Astrophysics, CFD, Molecular Dynamics, etc... Fortran compilers tend to be at the leading edge in parallel and numerical applications. 8. Electronic Distribution Procedures A lengthy discussion took place in which several suggestions were made. All agreed that all forms of security for access to documents being suggested were relatively fragile but that a definitive policy was needed. A subgroup was formed to formulate proposals. Friday 9:00 a.m. Convenor gave summary of proposed new arrangements. Kurt Hirchert to manage documents at NCSA. Unclear as to where mirrors should be. HTML and PDF would be the main formats. Postscript would be acceptable and would be converted to PDF by Ellis or Hirchert. If there were problems with conversion the document would be returned to the sender for sorting out. Hennecke:ISO have a template for Web pages. Do we use it? Muxworthy:Can you obtain re-useable text from PDF? For searching etc. Ellis: A search facility is available with Acrobat. Walter:Facility for being able to use text is important. Hirchert:Documents should contain WG5 number. Ellis: Template for minimal documents will be made available. 9. Closing Business 9.1 Future Meetings The Convenor suggested asking France if they would be willing to host the meeting in 1999. Straw vote; Should convenor ask France to host 1999 meeting? (16-1-3) Finland has offered to host the meeting in 2000. Walter: In the past J3 summer meetings have been close (date and location) to WG5 meetings. This has allowed countries other than UK and US to contribute technically. Convenor: Back-to-back meetings would be good but are not easy to arrange. We should not constrain the meetings (dates and/or locations) by this. It is too restrictive. Wagener: It is a shame we have moved away from back to back meetings. J3 is always pleased to receive input from all quarters. I would encourage WG5 to return to having back-to-back meetings. There followed a set of informal votes that tried to ascertain which would be the best times of year to hold back-to-back meetings in reasonably close geographical locations. Straw vote: Which months would you NOT like the meetings to be held? In month order from Jan to Dec the result was : 5,3,3,8,4,1,2,3,7,7,3,11 Thus June and July seemed to be the least objectionable time with Feb, March, August and November close behind.. Next Meeting: Lars Mossberg gave a presentation on arrangements for the next meeting. The meeting would be held from June 8th to the 12th at the HT University in TrollhŠtten, Sweden and would be hosted by HTU and Volvo Aerospace Group. Accommodation would be in the Hotel Swania which was 5 minutes walk from the University. The hotel would be roughly the same as Vienna (which was c.1000 AS). Enquiries should be made to lars.mossberg@thn.htu.se Flights would mostly arrive at Gothenburg. Climate would be mixed with long days. Close to midsummer. Wagener: I found being able to book the hotel in Vienna via email very convenient. Will this be available for the Swania? Mossberg: I will investigate. 9.2 Any other business Schmitt: It is now 20 years since the first Fortran meeting in the Hague. This should be publicised. Would it be possible for the convenor to put an article in Fortran Forum and other Computing newspapers? Convenor: Yes this can be investigated. 10. Adoption of Vienna Resolutions The resolutions and the voting on them are recorded in N1290. 11. Adjournment of the Meeting The convenor officially declared the meeting closed at 1330 on 25th July 1997.