[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

styles of standards definition



The current Draft is widely ambiguous and not in keeping with modern definitional practice for such things. At the Tuesday subcommittee we enumerated several approaches that have been used in defining various other standards. These include:
  1. Formal definition languages, such as Backus-Naur Form (Algol60), van Wijngaarten Notation (Algol68), and Vienna Definition Language (PL/1)
  2. Comprehensive test suites, such as that used by Ada
  3. Oracles, where the behavior of a particular implement ion is defined to be canonical (as in SmallTalk and early Java)
  4. Narrative English, as in K&R C.
Our approach is of course number 4 (narrative) for various good reasons, despite the well-known clarity and ambiguity problems of narrative. However, there are a wide range in styles even within the narrative approach. The following link is to an HTML version of the 1996 draft C++ standard, a example of the state of the art in narrative standardization.
    http://www.csci.csusb.edu/dick/c++std/cd2/index.html
This sort of thing is probably necessary for us if we are to avoid a sea of ambiguity. Ours would not be as large as the C++ standard, but what we define is equally as complex as some part of C++ of similar size and would require similar care.

Ivan

754 | revision | FAQ | references | list archive