Subject: Clarifying "Keyword" J3/01-245r2 From: Kurt W. Hirchert (Meeting 157) 08 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 ===== [6:16] Change "statement keywords and attributes" to "keywords". [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 describe 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 use of the term keyword without any preceding modifier. Examples of keywords are: IF, READ, UNIT, KIND, and INTEGER. (2) It is used to denote names that identify items in a list. In argument lists, type parameter lists, and structure constructors, items may be identified by a preceding = rather their position within the list. 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 a structure constructor. R2XX <> NOTE 2.6 Use of keywords rather than position to identify items in a list can make such lists more readable and allows them to be reordered. This facilitates specification of a list in cases where optional items 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.2 above} [344:10] Change "keyword" to "name". [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 an item in a list." [406:36-37] Delete glossary entry for statement keyword. - end -