On Fri, 24 Aug 2012, Ramana Kumar wrote:
Changes don't have to add complexity. The point here is to make it even possible to add those changes that are actually simplifications (like degrading abstype), or which are simple conveniences (like line comments, or bars before first match clauses).
I've never quite understood what was wrong with poor old abstype. When I learned SML in 1993, I was told "abstype is bad, use functors instead". And when the awkward functorial style became unfashionable, there was opaque signature matching :> as newcomer.
Much later we discovered that :> actually has some problems of abstract types and toplevel pretty printing, even in SML/NJ. This proves that the later tinkering on the SML'97 module system was never fully pushed through the implementations, both SML/NJ and Poly/ML. And I've become a happy user of old abstype with old non-opaque signature matching in recent years.
Makarius