-------------------------------------------------------------------------------- BEGINNING OF X3J3/94-008R5.130 -------------------------------------------------------------------------------- X3J3/94-008r5 Meeting 130 Edinburgh, Scotland Date: August 19, 1994 To: X3J3 From: Editorial Committee (/edit: C.M. North) Subject: Editorial enhancements for future Draft Revisions This is the Editorial Committee's list of things which have been and are being considered for future Draft Revisions. Meeting document references are included where applicable; otherwise a meeting reference is given in the form M-xxx where xxx stands for the X3J3 meeting number. This document may be revised during each meeting. Items will not be deleted. Annotations of disposition and current subgroup assignment will be added. At this time, standing document 008 is divided into five sub-sections: edits already done to the FRAME version of 007, edits proposed for the F95 version of 007, edits being considered for F2000, edits not yet categorized or classified, and proposed edits which are not being considered by the editorial committee at this time. Note that new items added to this document are denoted by an asterisk (*). Items which have moved from one Section to another in this document are denoted by an ampersand (@). -------------------------------------------------------------------------------- Section 1: Edits already done to the FRAME version of 007 -------------------------------------------------------------------------------- 1. Place notes associated with tables in boxes within the tables; e.g., see Table 7.1, [74:20-49], and Table 6.1, [65:1-29]. (M-127) 2. On [114:11-13] change vertical ellipsis to horizontal ellipsis. (M-127) 3. In Section 13.13.17, [200:20], add period at end of section. (M-127) 4. In Section 10.9.2.1, [154:34], the "w" in the integer edit descriptor should be italicized. (M-127) 5. In Annex A, several places, insert an additional reference and a right parenthesis; e.g., [256:23], [259:19]. (M-127) 6. In Table C.1 [279:10-61], order rows alphabetically. (M-127) 7. In Section C.13.2.4 [299:16] the "N" should not be italicized (two occurrences). (M-127) 8. [261:9] Add "in a" to target definition to fix misleading grammar introduced by interp 0. (10 Jan 94) 9. Italicize "program" in Annex A glossary entries "constant expression" [255:41] and "procedure" [259:19] to be consistent with the rest of the glossary style. (11 Jan 94) 10. Globally change "executable program" ---> "program". (X3J3/92-194) 11. Automatic cross-referencing for the next document revision. (Weaver, M-124) 12. Look at interword spacing, especially in titles. Put at least two spaces between sentences everywhere. (M-127) 14. Host association, 12.1.2.2.1, probably doesn't belong in 12 since it also applies to type definition. (M-124) Move 12.1.2.2.1 and 12.1.2.2.2 ---> 14.6.1.2. (M-127) (X3J3/94-250) 15. Move [158:26-27] ---> 14.6.1.2. (M-124) (X3J3/94-250) 16. In Section 12.3.2.1 delete the redundant constraint on interface-block in BLOCK DATA [167:34]. (X3J3/92-200, X3J3/94-250) 17. In Annex A [255:42] change "CASE" to "SELECT CASE". (X3J3/92-218, X3J3/94-250) 18. In Section 14.6.2.1 [247:1] change "target" to "target is an allocat- able array that". (M-123) (X3J3/94-250) 19. In the following places, numbers in parentheses () should be large, not small: [250:18], [251:20], [252:17]. There may be more occur- rences. (M-127) (X3J3/94-250) 20. Use square brackets for optional arguments in Section 13 headings. (M-127) (X3J3/94-250) -------------------------------------------------------------------------------- Section 2: Edits proposed for F95 the version of 007 -------------------------------------------------------------------------------- 13. Each proposed functional change from F90 to F95 must be accompanied by a rationale suitable for inclusion in an Annex. (M-127) (X3J3/93-322r2) 21. Move Annex C to footnotes (with "enormous" editorial latitude). (X3J3/93-322r2) 22. a. Gather together the text on actual arguments and dummy arguments. Delete the heading "12.4.1 Actual argument list". Insert a new heading, [172:10+] "12.4.1 Actual arguments, dummy arguments, and argument association". Move Section 12.5.2.8 Restrictions on dummy arguments not present and Section 12.5.2.9 Restriction on entities associated with dummy arguments to be subsections of the new Section 12.4.1. b. Correct the definition of tokens. Section 3.2 defines tokens as having "indivisible interpretations", yet the integer constant 1_cat is a token, even though the name "cat" is recognizably a name and is separately described as a kind parameter. (X3J3/93-008r4, X3J3/93-306, X3J3/93-322r2) 32. Rewrite example in Section 4.5 [38:34]. (M-124) (SD006.19); e.g., LINE (RESHAPE ( (/ 0.0,0.0,1.0,2.0 /), (/ 2,2 /) ), 0.1, 1) 36. Include an explanation of the multipart nature of 1539, describing the parts, for example: This standard is a multipart standard. The parts are published separately. The first part, 1539-1, ... . The second part, 1539-2, ... . (JTM, Nov 93, X3J3/94-267) 39. Change the meaning of subscript (X3J3/94-015); i.e., on [261:3-4] delete "Note that in FORTRAN 77, the whole list was called the subscript." 45. Consolidate allocation status text. (X3J3/94-126) 51. Move length-selector material at [41:1-3] to 5.1.1.5. (X3J3/93-278) 57a. Use consistent notation for the two integer models. (Weaver, M-129, X3J3/94-131, paragraphs 3,4). 61. Add the edit suggested by Gorelik in a comment on defect item 76. Page 254, Annex A [254:31], attribute. Change "(R501)." to "(R501) or in an attribute specification statement." (JTM, M-129, X3J3/94-160, pp. 5, 12). 65. Reword Glossary entry for "Construct". (X3J3/92-218) (Note: This item originally appeared in X3J3/93-008, X3J3/93-008r2, and X3J3/93-008r3, but was inadvertently dropped from X3J3/93-008r4, X3J3/94-008, X3J3/94-008r1, and X3J3/94-008r2.) 66. Remove the reference to "automatic" in 2.3.4 [12:51]. (X3J3/94-217) 67 Either delete the text for automatic array in 5.1.2.4.1 [45:29-30], or add to 5.1.1.5 text similar to that in [45:29-30]. (X3J3/94-217) -------------------------------------------------------------------------------- Section 2A: Edits proposed for F95 the version of 007 that require X3J3 approval -------------------------------------------------------------------------------- @37. The constraint [57:1-5] is unclear. It could be read to state that an object of nonsequence derived type must not be an equivalence object. I believe the intent is that it must not be an equivalence object only if it contains a pointer at any level of component selection. This should be clarified for F9X. (JTM, Nov 93, X3J3/94-267) Note that this item has been fixed by X3J3's approval of the response to X3J3/94-006 item 000177. @38. Rule R549 allows only explicit-shape arrays in a COMMON statement, however, array pointers are allowed in common blocks since they are not restricted by the second constraint following R549. Pointers in common are also implied by [58:34-35] and [59:41-42]. Apparently, they have to have their [deferred] shape specified in a separate statement. This is an oversight that should be remedied in F9X. Note that lines [59:3-4] also need to be revised. (JTM, Nov 93, X3J3/94-267) @42. Consistent description of optional arguments for intrinsic functions. (X3J3/94-122, except for the suggestion to identify RANDOM_NUMBER in 13.13.83 as elemental.) @47. Consistent specification of intrinsic function undefined results. (X3J3/94-128, Proposal 2) -------------------------------------------------------------------------------- Section 3: Edits being considered for F2000 -------------------------------------------------------------------------------- 23. Do a complete re-write of the Fortran Standard. (M-123, M-124) 24. Use a more formal/rigorous semantic description technique, (M-124, VDM-SL, X3J3/92-190); "action semantics" (Wagener). 25. Make a ruling (or rulings) on treating nouns such as "data" as either a plural noun or a singular collective noun. (X3J3/93-113) 26. Move Chapter 14 into the rest of the Document piecemeal. (M-124) (Requested by Dick Hendrickson) 27. Consistently distinguish between an entity and its name (SD006.88, M-123) and be more precise in the use of the term "entity". (X3J3/93-113) 28. Reconsider the syntax and philosophy of examples. (M-123) 30. Reorganize and reclassify the intrinsics in Chapter 13. (M-123) 41. Annotate syntax with constraints. (X3J3/94-056, X3J3/94-132) 46. Redefine constant expression. (X3J3/94-127) 48. Consistent definitions for intrinsic functions. (X3J3/94-129) 54. Reorder syntax rules and constraints for derived type definitions more logically [32:40-33:38]. (X3J3/94-031r0 pg 3-4. Only the r0 version in the meeting 128 premeeting shows the suggested reorder). 55. Clarify the term "affect". (X3J3/94-011) 58. Distinguish between the "execution" [103:33] and "syntactic" [101:37-38] uses of the word "terminal" in the document. (Weaver, M-129, X3J3/94-155). 59. Disambiguate the use of "keyword". (JTM, M-129, X3J3/94-160, p. 5,9). 60. Consider a different organization of Section 13 (there is already an item about MERGE in section 5 of this document below). (JTM, M-129, X3J3/94-160, p. 5). 62. Explain and clarify function side effects. (W. Brainerd, M-129, X3J3/94-183). -------------------------------------------------------------------------------- Section 4: Edits not yet categorized or classified -------------------------------------------------------------------------------- 31. Change wording for Result Value, Case (i), for ASSOCIATED. [198:35] (X3J3/92-132) 33. Remove inconsistencies in the use of the terms "attribute", "property", and "characteristic". (X3J3/92-202r, X3J3/92-248, X3J3/92-307, SD006.76, X3J3/93-112) 34. Be consistent in the use of "local name" and "name". (Weaver) (M-125) 49. Consolidate INTENT descriptions. (X3J3/94-130) 50. Delete 7.1.4.1 as redundant. (X3J3/93-278) 52. Clarify in 9.2.1.3.1 that / can cause "non-advancing i/o" to advance. (X3J3/93-278) @64. Consistently use "set" to mean a "collection" and replace it's uses that mean "assign" with the word "assign". (Weaver, M-129, X3J3/94-142) 68. Is "array construction functions" a technical term? If so, it is necessary to list all intrinsic procedures for this classification. (X3J3/94-262, X3J3/94-278) 69. Make Constraints in Sections 5.1 and 5.2 uniform with respect to description of attribute specifications. (X3J3/94-278) 70. Replace AB by A*B, XA by X*A, and AY by A*Y in examples of Section 13.13.62. (X3J3/94-278) -------------------------------------------------------------------------------- Section 5: Proposed edits not being considered by the Editorial Committee at this time -------------------------------------------------------------------------------- 29. Remove (or add) redundancy. (M-124) 35. Merge sections 13.10 and 13.11 into 13.3-13.9. (X3J3/94-029) 40. Combine defined operation definitions. (Weaver, X3J3/94-055) 43. Consistent presentation of MOD and MODULO. (X3J3/94-123) 44. Define or avoid the term "body of a main program". (X3J3/94-124) 53. Use bnf terms (and font) everywhere that is appropriate. (X3J3/93-278) (Withdrawn in X3J3/93-334.) 56. MERGE not an array construction intrinsic? (X3J3/92-197) ASSOCIATED in wrong section? (M-123) 57b. Consolidate the descriptions for integer and real data types. (Weaver, M-129, X3J3/94-131, paragraphs 1, 2, 5). 63. Consistent definition of NCOPIES for negative values. (Weaver, M-129, X3J3/94-133). -------------------------------------------------------------------------------- END OF X3J3/94-008R5.130 --------------------------------------------------------------------------------