They are writer monads for sure, but WriterT does not subsume them. If a typeclass method has type Writer w a, it does not allow GeneralizedNewtypeDeriving on it due to the type roles. I don't really have any idea how instance warnings should look like. 2019年4月7日(日) 17:58 Henning Thielemann <lemming@henning-thielemann.de>:
On Sun, 7 Apr 2019, Fumiaki Kinoshita wrote:
I removed Foldable/Traversable instances from the patch with reluctance. I'd still like to add these instances:
Functor ((,,) a b) (Monoid a, Monoid b) => Applicative ((,,) a b) (Monoid a, Monoid b) => Monad ((,,) a b) Functor ((,,,) a b c) (Monoid a, Monoid b, Monoid c) => Applicative ((,,,) a b c) (Monoid a, Monoid b, Monoid c) => Monad ((,,,) a b c)
Still duplicates to the Writer monad.
How about extending the patch by the long needed instance warnings? :-)