On 1/2/06, David Roundy <[EMAIL PROTECTED]> wrote: > Hi all, > > I'd like to humbly submit a conservative proposal for changes to the > records mechanism for Haskell '06. The plan for Haskell '06 (to the extent > that there is one) is to make it a conservative modification of Haskell > 98, which is a good idea. As such, I don't think features should be added > to the language that haven't been both implemented and tested, and the > problem with the whole records problem is that pretty much every proposed > improvement is *not* backwards-compatible with Haskell 98, and therefore > hasn't been either implemented or tried out.
First of all, I do think your proposal is better than the current situation, but only marginally so. I know I'm probably in the minority here, but I think the current Haskell records system is so horribly broken that it's basically impossible to end up with something worse, regardless of which of the existing records proposals you go with. And I agree strongly with Joel Reymont and others who basically say that one of the largest obstacles for Haskell being used in the "real world" is its records system. So personally I think that there should be some careful consideration (and implementation, of course) of the records proposals and then just make an educated "guess" as to which would work best in practice and go with it. All of the existing proposals are a lot better than the existing mechanism, even if they're not "optimal". Yes I know H'06 is supposed to be mainly a standardization of existing extensions, but as I said, the records system is so broken that I for one think its "fix" should be accelerated even to the point of including a brand new feature into an otherwise conservative standardisation process. You could view H'06 as the "practice run" for a next-gen records mechanism to be considered for Haskell 2.0. /S -- Sebastian Sylvan +46(0)736-818655 UIN: 44640862 _______________________________________________ Haskell mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell
