Records in Haskell

AntC anthony_clayden at
Tue Feb 28 09:36:57 CET 2012

wren ng thornton <wren <at>> writes:

> I'm not sure that I like the current proposals for how to control the 
> non/automatic-ness of polymorphism (for reasons I can spell out later, 
> if desired). But we definitely want to have something that's a bit more 
> cultured than simply making all record projectors polymorphic over records.

Wren, I'm not sure if you've got it straight. (It's a subtle issue.) This is 
an area where SORF differs from DORF:
- SORF can't hide the representation of a given field name
  (so a client program can 'guess' a field "identifier")
  That's because SORF is driven by String Kind, which cannot be scope 

- DORF uses (Proxy) types for (roughly) the same purpose as the String Kinds.
  But because they're types, you can control the scope, and keep the 


More information about the Glasgow-haskell-users mailing list