Re: Languages: The Bigger the Uglier (was: (David Chase)
1 Mar 1996 17:56:32 -0500

          From comp.compilers

Related articles
Re: Languages: The Bigger the Uglier (was: Re: Aliasing in ISO C) (1996-02-27)
Re: Languages: The Bigger the Uglier (was: (1996-03-01)
| List of all articles for this month |

From: (David Chase)
Newsgroups: comp.compilers
Date: 1 Mar 1996 17:56:32 -0500
Organization: CenterLine Software
References: 96-02-326
Keywords: standards (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

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

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.