Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ncar!boulder!gore!jacob From: jacob@gore.com (Jacob Gore) Newsgroups: comp.lang.c++ Subject: Re: Reference implementation of C++? Message-ID: <110007@gore.com> Date: 9 Nov 89 08:47:44 GMT References: <9.UUL1.3#5127@aladdin.com> Reply-To: jacob@gore.com (Jacob Gore) Organization: Gore Enterprises Lines: 35 / comp.lang.c++ / ekrell@hector.UUCP (Eduardo Krell) / Nov 8, 1989 / I find it hard to believe that a document written in a natural language will provide a complete, unambiguous semantic definition of a programming language. The last time that was tried was Ada and even though they intended the Ada Language Reference Manual to become the ultimate semantic definition, they still needed a committee to resolve ambiguities and inconsistencies within the LRM and the interaction among the most obscure Ada features. ---------- I don't think you can avoid having unforeseen questions about the definition, whether it is "formal", "natural language", or "operational" -- especially about the "interaction among the most obscure features". Sure, a natural language description will have ambiguities that are inherent to natural languages. But this only covers the cases where the authors of the document intended to provide the information in the first place, and it just came out ambiguously. Omissions are a different matter. The Algol-68 Revised Report[1] can hardly be described as "written in a natural language" (certainly nothing used on this planet:-) -- but that is no guarantee against things being left out of it. (If that was the case, there wouldn't be a need for a Revised Report, would there?:-) And the same problem occurs with using a reference implementation: to be executable, it has to be written for a specific set of platforms, and it just doesn't address questions that will show up on other platforms. ------ [1] Revised Report on the Algorithmic Language Algol 68. A. van Wijngaarden, et al, ed. Springer-Verlag, Berlin, 1976 -- Jacob Gore Jacob@Gore.Com boulder!gore!jacob