On Sat, Mar 27, 2010 at 01:05:45AM -0400, wren ng thornton wrote: > Why wouldn't > > data Coproduct f g a = FLeft (f a) | FRight (g a) > > with appropriate instances count as a transformer? It would, but the instances would just be Functor, Foldable and Traversable.