On Thu, 15 Sep 2011, Edward Kmett wrote: > The Strict/Lazy writer split has nothing to do with the strictness of your monoid, but > rather whether or not operations such as: > > > fmap f ~(w, a) = (w, f a) Doesn't this violate the fmap law fmap id = id because fmap id undefined = (undefined, undefined) ?