Van Snyder wrote:
> On Wed, 2006-06-14 at 13:38 -0600, James Giles wrote:
>> The LIA standard is hardpressed because there is a *lot* of
>> animosity among designers of sepcific languages.
>
> The "animosity" (if that's the correct term) was engendered by the LIA
> committee, who first did several nutty things, and then (at the outset
> at least) insisted that other language standards be changed to conform
> to their standard, compatibility be damned. The committees that are
> proposing to standardize IT vocabulary, and syntax for syntax rules,
> are making similar mistakes.
>
> My sense of the J3 opinion of LIA is not animosity, or even antipathy.
> Rather, we view LIA as largely irrelevant, because Fortran already
> complies with several of its provisions, while complying with all of
> them would require a revision of Fortran that is incompatible with
> present editions in several important ways.
>
> I don't have LIA anymore, and I don't remember the details of what LIA
> required that would have been incompatible with existing Fortran
> standards.
A few years ago I saw a public review of the LIA-3 proposal (Complex
data type) from a member of the Fortran committee. It was one of the
most vitriolic and unpleasant things I've read on any forum. It was
also very poorly informed on the subject matter. In fact, it almost
nowhere even talked about the normative part of the document (and
the author didn't seem to understand the distinction between normative
and informative). Most of the review railed on about trivial complaints
about the Fortran binding.
For example, the LIA standard has (internally) a function they call
plusitimes(x,y). This takes the two REAL operands X and Y, and
makes them into a COMPLEX value whose real part has the value
of the X operand and whose imaginary part has the value Y. And the
result should have the type (in Fortran's parlance: KIND as well)
appropriate to the types (and KINDs) of the operands. Well,
whoever wrote the LIA document correctly understood that the
CMPLX intrinsic function was *not* the correct binding. He probably
didn't know about the optional third argument to CMPLX, but for
whatever reason, he just threw in a guess at *some* plausible
binding and went on. (He wrote X+IU*Y under the assumption
that there *could* be a predefined constant IU defined for the
purpose.) Well, the Fortran binding is not normative (and was
identified as tentative and incomplete anyway), but the public
review from the member of the Fortran committee blasted them
for it. Instead, he could have politely informed them that CMPLX
had an optional third argument, or that it's possible to define
new operators (my favorite: a .i. prefix operator could be made
intinsic). Etc. There's a lot of possible ways to bind the operations
to Fortran's syntax. All of them are irrelevant to the main business
of the LIA committee.
In the meantime, all the normative parts of the document weren't
even addressed. There are few (if any) provisions that conflict with
existing Fortran semantics (the LIA standard almost entirely about
semantics - syntax is pretty much irrelevant to them). If the review
I saw is indicative of the actual level of the Fortran committee's
knowledge of the subject that's frightening. In any case the fact
that the Fortran committee has a poor opinion of the LIA committee
is not, based on this example, a particularly compelling reason
to dislike the LIA.
--
J. Giles
"I conclude that there are two ways of constructing a software
design: One way is to make it so simple that there are obviously
no deficiencies and the other way is to make it so complicated
that there are no obvious deficiencies." -- C. A. R. Hoare
|