class MonadTrans t where
lift :: Monad m => m a -> t m a

t m a가 모나드라는 보장은 없지만 표준 라이브러리의 MonadTrans 인스턴스들은 다들 t m a가 모나드가 되던데요