[過去ログ] 関数型プログラミング言語Haskell Part33 (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
504
(1): 2020/09/12(土)10:38 ID:A2+hHxph(1) AAS
[分数モナド](外部リンク:ncatlab.org

日常生活でも目にする`2 / 3`のような分数表記はモナドになっている。
吸収元の問題があるので、ネタとしては引き算`2 - 3`の方が扱いやすいが、
引き算の場合、`2 - 3 = - 1`のように計算してしまった結果が使われ、
日常生活では生々しいモナド表記はあまり使われない。その点、分数では、
直積からのコンストラクターをもろに使った漢な表現が
日常生活の中で使われている。

分数は、モナドを使うことと、モナドを理解することは別腹という
良い例になっている気がする。分数がモナドになっていることが生きてくるのは、
システムがそれなりに複雑になってからじゃないかと思う。抽象化には
コストがかかるので、そのコストに見合った見返りが必要になるが、
システムが簡単だと、抽象化のコストをペイできない。

分数モナドは有名な例なので、何処かのブログで紹介されていると思うが、
見たことがないので、書いてみた。ホームが可換モノイドの圏なので、
オレオレモナドになってしまうが、モナド則の`QuickCheck`はできるので、
圏論の練習になるかもしれない。
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.039s