(j3.2006) Partial write in record with nonadvancing I/O
Wed Feb 29 19:36:41 EST 2012
> Asserting that it is ambiguous does not make it so - show the ambiguity.
>An indication of where the standard (plus interps if necessary)
>specifies which of the three observed outputs is correct would be
Ah, so we have moved on from "ambiguous" to a claim of "not specified". That is
a horse of an entirely different colour.
Anyway, the standard says where the left tab limit is, where the file position
is, and what the effect of the various edit descriptors is. I see no particular
I should perhaps remind people that "interpretation request" is not there for
the committee to do your homework. It is there to report *DEFECTS* in the
standard - indeed the ISO terminology is "Defect Report".
Going back to the left tab limit, the file position, and the effect of the edit
descriptors: I am frankly astonished that there is any difficulty in processing
these concepts and in tracing the effect on the program. It is *INCREDIBLY
TEDIOUS*. But I see no actual difficulty.
People who have difficulty and want some step explaining should at least attempt
to reason out from those three concepts I just named and apply them to their
example programs. I would hazard a guess that those having difficulty would
find their problems resolved.
Rafik Zurob wrote:
>I've been following this discussion closely and would like to add my voice
>to that of the ones saying that this section of the standard is not very
>clear. (Maybe it's not ambiguous, but it's not very clear.)
Improving exposition is a topic for the next revision, not for a defect report.
I certainly agree that our exposition can be improved here, but... wording
changes are not a risk-free endeavour. We can do editorial changes with high
reliability (though not quite 100%) but going beyond editorial certainly risks
>I'm also interested in the expected output with stream access.
Since we are talking about formatted streams here, it is the same as sequential:
"For a formatted stream output statement, if no error condition occurred, the
terminal point of the file is set to the next position after the
highest-numbered position to which data was transferred by the statement."
Contrary to claims, it is not actually difficult to find this info... but it
certainly is tedious! And it sounds like IBM has a bug to fix...
BTW, those wanting this to be simple and easy to understand should remember that
we are talking about i/o here, and with a very general model that applies to all
kinds of i/o systems (not just the trivial Unix byte stream model). Simplicity
is not on the menu.
................................Malcolm Cohen, Nihon NAG, Tokyo.
More information about the J3