Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
The ML approach to the readable all-purpose language
Spooner C. ACM Transactions on Programming Languages and Systems8 (2):215-243,1986.Type:Article
Date Reviewed: Dec 1 1986

Language designers have long been interested in improving the readability of programs. The “ML approach” of this paper (which has nothing to do with the functional language ML) is based on the idea that adapting the syntax and, especially, the semantics of natural language results in highly readable programs.

This is accomplished by relying on a “language environment” to define both syntax and semantics of program elements. The bulk of the paper presents a number of mechanisms for building the environment, and defining familiar constructs, such as loops, table lookups, and so forth. This is a good idea, which is quite familiar to LISP programmers, who are used to making dramatic changes in the programming language and environment from within that environment. Although the author references an old paper on LISP [1], there is no mention of the flexibility of modern LISP dialects.

The rationales for duplicating large amounts of English (or French, or German) syntax and semantics do not seem very strong. They seem to be based on the model of a person (who may or may not be familiar with ML) reading a program listing. Modern programming environments reduce the likelihood that anyone would have to read an entire listing, and modern trends towards abstraction and verification reduce the likelihood even further. The example programs in the paper left me with the uneasy feeling that I did not really understand what the programs were doing.

More disturbingly, ML ignores nonprocedural paradigms. It appears to be suited only for expressing procedures, and there is no discussion of how the “ML approach” applies to a purely declarative sentence. Handling a logic paradigm, for instance, is not just a matter of defining new words in the environment; it requires difficult decisions about how inference will be done.

The long publication delay (some 5 years) has resulted in a rather anachronistic paper with little usefulness for language designers today. I cannot recommend this paper to anyone but doctoral students scouring the language design literature.

Reviewer:  S. Shebs Review #: CR110847
1) Sandewall, E.Programming in an interactive environment: the LISP experience, ACM Comput. Surv. 10 (1978), 35-71.
Bookmark and Share
 
Ml (D.3.2 ... )
 
 
Language Constructs and Features (D.3.3 )
 
 
Processors (D.3.4 )
 
Would you recommend this review?
yes
no
Other reviews under "Ml": Date
Commentary on standard ML
Milner R. (ed), Tofte M. (ed), MIT Press, Cambridge, MA, 1991. Type: Book (9780262631372)
Jun 1 1992
ML primer
Stansifer R., Prentice-Hall, Inc., Upper Saddle River, NJ, 1992. Type: Book (9780135617212)
Sep 1 1993
Elements of ML programming
Ullman J., Prentice-Hall, Inc., Upper Saddle River, NJ, 1994. Type: Book (9780131848542)
Jun 1 1995
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy