何かがMonoid
またはMonad
であることがわかった場合は、 や など、あらゆる種類の楽しい関数を使用するようfoldMap
にsequence
なりmapM
ます。彼らは私を幸せにしてくれます。
何かが であることがわかった場合はどうなりますCategory
か? オーバーロード以外に楽しいことはid
あり(.)
ますか?
何かがMonoid
またはMonad
であることがわかった場合は、 や など、あらゆる種類の楽しい関数を使用するようfoldMap
にsequence
なりmapM
ます。彼らは私を幸せにしてくれます。
何かが であることがわかった場合はどうなりますCategory
か? オーバーロード以外に楽しいことはid
あり(.)
ますか?
idと(。)をオーバーロードする以外に何か楽しいことはありますか?
ええと、あなたはそれらに関連する法律も(すべきです)取得します:
"identity/left" forall p .
id . p = p
"identity/right" forall p .
p . id = p
"association" forall p q r .
(p . q) . r = p . (q . r)
mapM
ちなみに、またはのような多くの楽しい機能が得られない理由foldMap
は、何かがカテゴリであると言うことは、実際にはそれについてほとんど何も言っていないということです。私が推測する最も便利な関数は、で定義されている関数ですControl.Category
。これにより、コードが読みやすくなることがあります>>>
。<<<
Control.Category
は の基礎作業にすぎず、Control.Arrow
そこから楽しい関数が得られます。