For anyone writing introductions to generic programming, take this as
a plea from Haskellers everywhere. If one of the RWH authors can't
understand how to make use of these techniques, what hope do the rest
of us have?
I would like to help you with this problem, though with a different library. You can find EMGM [1] on Hackage. If you have a problem with the documentation there, please let me know. I would consider it a bug. To understand it, however, you should consider reading the tech report "Libraries for Generic Programming in Haskell" [2], an extended version of an article in a recently published collection of lecture notes from the 2008 Advanced Functional Programming Summer School [3].