Is there any reason why there is no ComonadTraced instance for CofreeT? This seems like the obvious implementation, but I'm not sure if it would break the semantics for ComonadTraced:
instance (ComonadTraced m w, Functor f) => ComonadTraced m (CofreeT f w) where
trace m = (\(a :< _) -> a) . trace m . runCofreeT
I also have similar questions about ComonadEnv and ComonadStore.
Is there any reason why there is no
ComonadTraced
instance forCofreeT
? This seems like the obvious implementation, but I'm not sure if it would break the semantics forComonadTraced
:I also have similar questions about
ComonadEnv
andComonadStore
.