Subject: Clarifying "Keyword" J3/01-245 From: Kurt W. Hirchert (Meeting 157) 06 Jun 2001 ======== Overview ======== While working on issue 323, /data discovered a number of errors and infelicities on the draft related to the word "keyword". This document attempts to repair some of them: o Simplify 2.5.2 by grouping three of the meanings together. o Fix BNF error related to . o Fix font typo in BNF. o Fix a small number of inconsistent uses of the word keyword. o Change "component name keyword" to simply "component keyword" to be more consistent in terminology. o Delete unhelpful glossary entries. ===== Edits ===== [19:2-25] Replace the text of 2.5.2: {Note to Richard: some of this text comes from the existing 2.5.2; it is re-entered here to better allow J3 to see the effects of some fairly extensive edits.} "The term <> is used in two ways in this standard. (1) It is used to described a word that is part of the syntax of a statement. These keywords are not reserved words; that is, names with the same spellings are allowed. In the syntax rules, such keywords appear literally. In descriptive text, this meaning is denoted by the term <> and by the use of the term keyword without any preceding modifier. Examples of statement keywords are: IF, READ, UNIT, KIND, and INTEGER. (2) It is used to denote names that identify the constituents of a list. In contexts such as the OPEN statement, the allowed names are part of the syntax, and these are keywords in the first sense, as well. In contexts where the allowed names are not specified, the syntactic class is used. R2XX <> In descriptive text, a modifier indicative of the source of the valid names precedes the word keyword; an <> is the name of a dummy argument in the interface for the procedure being referenced, a <> is the name of a type parameter in the type being specified, and a <> is the name of a component in the type of the value being assembled by a structure constructor. NOTE 2.6 Use of keywords rather than position to identify constituents of a list can make such lists more readable and allows the constituents to be reordered. This facilitates specification of a list in cases where optional constituents are omitted." [55:26/56:44/56:45/57:11] Change "component name keyword" to "component keyword". [56:28] Change "keyword" to "". [255:14] Delete R1220. {Replaced by R2XX in 2.5.5 above} [344:10] Change "keyword" to "argument keyword". [347:43] Change "keyword" to "type parameter keyword". [348:2] Change "keyword" to "component keyword". [397:28-29] Delete glossary entry for argument keyword. [399:12-13] Delete glossary entry for component name keyword. [403:27-28] Replace glossary entry for keyword with the following: "<> (2.5.2): A word that is part of the syntax of a statement or a name that is used to identify a consituent of a list." [406:36-37] Delete glossary entry for statement keyword. - end -