数学の学生として、Haskell のモナドについて学んだときに最初にしたことは、自分が知っている意味でモナドが本当にモナドであるかどうかを確認することでした。しかし、モナド変換子について学びましたが、それらは圏論で研究されているものではないようです。
特に、それらは分配法則に関連していると予想しますが、それらはまったく異なるようです。モナド変換子は任意のモナドに適用されることが期待されますが、分配法則はモナドと特定の他のモナドとの間の関係です。
また、モナド変換子の通常の例を見ると、 while compose withは、どちらの順序でもwithのMaybeT m
合成ではありません。m
Maybe
StateT m
m
State
だから私の質問は、カテゴリー言語のモナド変換器とは何ですか?