
On Saturday 04 March 2006 19:35, Claus Reinke wrote:
a more promising approach would be to specify the user-level features of the current system, then to show at least two translations: one for the current desugaring, and a second one to demonstrate at least one implementation of those features in an alternative record system.
the point of that exercise would be to figure out which features of the current user-level view of labelled fields would make a later transition difficult, and to mark them as deprecated or to remove them now. in other words, the "reference" translation should not be to the most powerful record system imagined so far, but to a fairly simple one, which all "better" record systems ought to be able to mimic.
my current favourite for such a simple alternative record system would be Daan Leijen's "Extensible records with scoped labels" (TFP2005): http://www.cs.uu.nl/~daan/pubs.html
Yes. Daan Leijen's record system is the best of all the ones I have read about, not least because of its simplicity.
ps. the Curry folks are looking into adding labelled fields, and seem to have decided to go for a trial implementation of Daan's system before making any decisions: http://www.informatik.uni-kiel.de/~curry/listarchive/0406.html
I would very much like to have this. I wouldn't mind if it were qualified as an experimental extension, etc.. If not in Haskell' then maybe at least in some future ghc version? Ben