Subject: Clarifying "Keyword" J3/01-245r1
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 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 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 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 "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 an item in a list."
[406:36-37] Delete glossary entry for statement keyword.
- end -