[過去ログ] 関数型プログラミング言語Haskell Part16 (978レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
807
(1): 2011/12/23(金)19:37 AAS
>>802
その例だと、内部でやってることもだいたい同じ
実際の型に応じて実装が選ばれる
実装を選ぶタイミングがコンパイル時か実行時かは違う

型クラスは ad-hoc polymorphism を使いやすくしたものでオーバーロードの親戚
OOPのほうはsubtype polymorphismといって、部分かなり違う部分がある
例えばsubtype relationが推移律をみたすみたいな強い性質がある
subtypeがあるとどうなるかは、Scalaが壮大な社会実験中
826: 2011/12/24(土)05:44 AAS
>>804 , >>807
ありがとう。
でも、その理屈でIO()をモナドに抽象できるのだとすると、

「IO()で提供されていた種々の関数は全て、
モナドで提供されている演算子に置き換え可能である」

という前提条件が存在すると思うのだけど、どうだろう?

この条件が成立しないと、結局forallはIO()型の値を必要とするよね。
IO()をMonad m=>mで置き換え可能であるためには、forallを使っている
コードも含めて、IO()型に関連する「全ての関数」のモナド版を
用意してあげなくちゃいけないと思うのだけど。
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.041s