[Haskell-cafe] A free monad theorem?