From: Robert H. <Rob...@cs...> - 2001-10-05 16:08:07
|
Hello everyone: Sorry for the long delay in replying, it has been a very busy week for me. As it turns out, Dave Berry and Dave MacQueen have largely expressed my views on the matter, and have probably done so better than I could have. A few salient points emerge in my mind: 1. Standard ML belongs to the community of those who have devoted so much to it. I hadn't realized until our recent discussion just how many different implementations there are out there! Languages are like children: you bring them up and then they exist on their own. We are all very deeply in Robin's debt for having conceived ML and presided over its maturation, but it is, by now, a full-fledged adult with its own life. 2. As I've previously articulated in an earlier organizational message, it is a clear principle of the community that we are committed to the existence of a language given by a formal definition (as opposed to the more common approach of defining a language by the one "blessed" implementation of it). This does not mean, however, that the the language is nothing more than its formal definition. Rather it is the means by which we, as a community, understand each other and communicate our shared intentions. 3. It is important that we as a community manage the inevitable and ongoing evolution of Standard ML. To pretend that any modification to Standard ML creates a new and independent language flies in the face of reality. 4. Evolving the definition is no more difficult than evolving an implementation. Indeed, the definition started life as an implementation of ML modules; the semantic objects are a formalization of the data structures used to implement it back in 1985! Moreover, as Robin aptly points out, the revision of the definition in 1997 increased his (and my) confidence in it, not the other way around. Nevertheless implementation and application experience raises technical questions about the definition and suggests modifications and extensions that we could not "think up" in the absence of that experience. Now, let's please get on with our technical discussions! I believe that the two topics currently on the table are to design a separate compilation mechanism and to resolve outstanding issues with the interaction between sharing specifications and type definitions in signatures. Bob Harper |