¿Por qué `mfix` no es total en` MaybeT`

losimplementación de transformadores deMonadFix paraMaybeT falla si la función alguna vez se evalúa comoNothing. Por que esNothing sin propagarsemfix?

mfix' :: MonadFix m => (a -> MaybeT m a) -> MaybeT m a
mfix' f = MaybeT $ mfix $ \case
  Nothing -> return Nothing
  Just x -> runMaybeT $ f x

Debe haber una buena razón que no veo porqueListT no implementaMonadFix en absoluto, yMaybe lo implementadel mismo modo como anteriormente.

Respuestas a la pregunta(2)

Su respuesta a la pregunta