Records in Haskell

Greg Weber greg at
Fri Feb 24 23:13:18 CET 2012

On Fri, Feb 24, 2012 at 2:00 PM, Barney Hilken <b.hilken at> wrote:
>> This should be used to generate
>> internal constraints and not be exposed to the end user and not
>> automatically abstract over fields.
> Every one of your messages about records stresses your dislike for polymorphic projections, and your insistence that the Has class should be hidden from the user. I've read all of your explanations, but I'm still totally unconvinced. All your arguments about the semantics of labels are based on the way you want to use them, not on what they are. They are projection functions! Semantically, the only difference between them is the types. Polymorphism makes perfect sense and is completely natural. There is nothing "untyped" about it.
> I feel you are pushing a narrow personal agenda here. I think the Has class would be useful to programmers and no harder to understand than other Haskel classes. It should not be hidden.

Barney, these kinds of statements about "personal agenda" are
counterproductive. I have put in a lot of work that nobody, including
yourself has been willing to do for years to push Haskell's records
forward. I would appreciate respectful disagreement - I think I have
earned that much. Please just stick to logical arguments.

Greg Weber

More information about the Glasgow-haskell-users mailing list