09-129 To: J3 From: Malcolm Cohen Subject: Spurious defined terms in clause 11. Date: 2009 February 03 1. Introduction --------------- The system for "defining" terms we used in previous versions of the standard is not in accordance with the ISO guidelines, so we need to stop using it. We have already introduced the ISO-compliant defined terms subclause, and moved/copied many definitions into it. However, quite a lot have not been revised. These should either - be turned into normal text ("untermified") or - become proper defined terms. This paper deals with the terms in clause 11. 2. Terms and what to do with them --------------------------------- - intrinsic module: Not needed, we already have "intrinsic"; = untermify, do not index. - nonintrinsic module: Ditto; = untermify, do not index. - USE statement: It's A Statement; = untermify, index as statement. - USE statement (twice!): Huh? = index the second one, not the first. Can't we reword this to avoid saying what a USE statement does twice? - use associated: Not needed, we already have "use association"; = untermify, index as "use association". - parent: Stealing Already-In-Use Terms Is Rude, We Already Have "host"; = use "host", or use "parent scope", or use "parent program unit". - child: Stealing Already-In-Use Terms Is Rude, And It's Unnecessary; = delete definition and reword. - ancestor: Stealing Already-In-Use Terms Is Rude; = reword ("ancestor program unit" will do), simplify, untermify. - submodule identifier: Only Used Once; = untermify, index as definition, make sure the use is indexed. 3. Edits to 09-007 ------------------ [273:20(11.2.1p1)] Unembolden "intrinsic module", do not index. [273:20(11.2.1p1)] Unembolden "nonintrinsic module", do not index. [274:21(11.2.2p1)] Unembolden "USE statement", do not index. [275:1(11.2.2p2)] Unembolden "USE statement", index as statement. [275:3-4(11.2.2p2)] Unembolden "use associated", index as "use association". [277:4(11.2.3p1)] Unembolden "parent", AND (a) "parent"->"host", twice, [index "host"] OR (b) after "its parent" insert "scope", [index "parent scope"?] OR (c) "its parent"->"its submodule parent", [index "submodule parent"] OR (d) after "its parent" insert "program unit", [index "parent p.u."] [277:4-6(11.2.3p1)] Replace three sentences "A submodule ... children." with the single sentence "A module or submodule is an ancestor program unit of all of its descendants, which are its submodules and their descendants." and index as definitions "ancestor program unit" and "descendant". {Simplify, reduce number of unnecessary terms.} [277:6(11.2.3p1)] Unembolden "submodule identifier", index as definition. ===END===