Here's an idea for a helper I wanted to document:
-- | Reduce to weak head normal form -- -- Useful for defining 'NFData' for types for which NF=WHNF holds. -- -- > data T = C1 | C2 | C3 -- > instance NFData T where rnf = rwhnf rwhnf :: a -> () rwhnf !_ = ()