Forum: Public ReviewIssue: IGNORE-USE-TERMINOLOGY
References: Barrett's public review comment #30
Category: CLARIFICATION
Edit history: 21 Dec 1992, Version 1 by Loosemore
Status: Proposal VALUE-ONLY passed (7+1)-2 on letter ballot 93-302
Problem description:
In the description of the IGNORE declaration, there are several
occurances of "use", "used", "referred to", and "referenced", which
are not well specified. The question is, what constitutes a use of a
binding. Are only references for value considered to be "uses~, or
should references as a place to modify also be considered "uses"?
Implementations differ on this question, making it very difficult to
use the IGNORE declaration in portable code.
There are two proposals, VALUE-ONLY and VALUE-AND-ASSIGNMENT.
Proposal (IGNORE-USE-TERMINOLOGY:VALUE-ONLY):
Change the description of the IGNORE and IGNORABLE declarations to
use the glossary term "reference" throughout.
Clarify that, for the purposes of IGNORE and IGNORABLE, a "reference"
includes only references for value.
Proposal (IGNORE-USE-TERMINOLOGY:VALUE-AND-ASSIGNMENT):
Change the description of the IGNORE and IGNORABLE declarations to
use the glossary term "reference" throughout.
Clarify that, for the purposes of IGNORE and IGNORABLE, a "reference"
includes both references for value and variable assignments.
Rationale:
Either one of these proposals would address the problem.
Current practice:
Unknown.
Cost to implementors:
Probably small.
Cost to users:
Probably small.
Aesthetics:
Specifying this behavior is more aesthetic than leaving it unspecified.
Editorial impact:
The changes are confined to the dictionary entry for IGNORE and
Discussion:
Barrett has indicated he prefers proposal VALUE-ONLY, but Loosemore
thinks that having variables that can be assigned to but not
referenced are of questionable utility.
While researching this issue, Loosemore noted that the provision
about the behavior of IGNORE (and presumably IGNORABLE) from issue
MACRO-DECLARATIONS had not been incorporated into draft 12.24. Can
we give the editor authority to remedy this?