In my experience it was a perpetual pain point. Do you namespace all your field names with a common prefix based on the outer type name? Or do you just get lucky and not have the names collide?
[1] http://www.haskell.org/ghc/docs/latest/html/users_guide/sepa...