Related articles |
---|
Re: Languages: The Bigger the Uglier (was: Re: Aliasing in ISO C) blume@zayin.cs.princeton.edu (1996-02-27) |
Re: Languages: The Bigger the Uglier (was: chase@centerline.com (1996-03-01) |
From: | chase@centerline.com (David Chase) |
Newsgroups: | comp.compilers |
Date: | 1 Mar 1996 17:56:32 -0500 |
Organization: | CenterLine Software |
References: | 96-02-326 |
Keywords: | standards |
blume@zayin.cs.princeton.edu (Matthias Blume) writes:
> It is also a fact that the same audience is unable to understand the
> ANSI C specification, and -- even worse -- without being aware of
> that. I venture to say that everybody who can read and FULLY
> understand all of the definition of ANSI C will also be able to
> understand "The Definition of Standard ML", (perhaps after a short
> introduction to the notation used, even though this notation is
> explained in the document itself).
I don't think so. I've got copies of both, and I understand the C
standard pretty well, and have a fair idea of what I don't know by
heart, and know where to go to figure it out. From first reading it,
I was able to make sense of it. This is not the case for TDoSML.
I've found that to be heavy slogging. The book does not lend itself
to quick reference work, and the notation is NOT completely explained
in the document itself (what's it mean when two formulas are separated
by a horizontal bar, for instance? That doesn't appear to be
explained anywhere in the book).
As to interpretation of language standards, I think that the lawyer
analogy is flawed.
1. Despite the weirdness of the legalese, it does in fact make use
of English words. Some of the definitions are non-standard, which
is the usual source of problems for non-lawyers. Language standards
are also written in weird English, in which some of the words have
non-standard definitions. Laws are not written in formal syntax,
though in certain situations the grammar must follow a particular
form.
2. The largest source of ambiguity in language standards is intentional,
and is not caused by the use of informal language. Figuring out
where that ambiguity is, *and when it does or does not matter*, is the
major problem. (And the existence of this intentional ambiguity
also calls into question the definiteness of the informal text --
was it intentionally written in an unclear fashion so as to permit
multiple interpretations, or did the authors just goof a little bit?)
3. I typically find myself wishing that I did not have to use the
services of a lawyer, but unless I change countries, I have little
say in the difficulty of reading and understanding our laws. For
computer languages, on the other hand, people do have a choice,
and will probably go with what they (think they) understand, rather
than obtain the services of a language lawyer.
This last point is relatively important -- consider the success of
various computer languages that have almost no specification at all
(i.e., those defined by their implementations, at least in the early
stages of their adoption).
speaking for myself,
David Chase
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.