Javaでは、クラスからオブジェクト/インスタンスを作成できます。 Haskellでは 我々は型クラス、EXからのインスタンスを作ることができます:confused about function as instance of functor in haskell OBS::これは同じ問題ではありませんHaskellではインスタンスの意味は何ですか?
data ShirtSize = S | M | L -- Here ShirtSize is a enum data-type
class MyEq a where
(==) :: a -> a -> Bool
instance MyEq ShirtSize where -- Here ShirtSize is an instance of the MyEq type-class
S == S = True
M == M = True
L == L = True
_ == _ = False
私はどのようにFMAP作品を求めていないです、私はインスタンスdeclerationはHaskellで何を意味するかを求めています。
私の質問は haskellではどういう意味ですか? javaではクラスからインスタンスを作成できますが、インスタンスクラスはインスタンスクラスのような型(ShirtSizeなど)(たとえば、MyEqの(==)関数)をインスタンス化することができます。私は正しい?また、Javaのインスタンス/オブジェクトと比べてHaskellのインスタンスは何ですか?
これはJavaの「インターフェイスの実装」のようなものです。 – Bergi
あなたは "インスタンスは、(MyEqの(==)関数のような)型クラス関数を適用することができるタイプのインスタンス(ShirtSizeのようなタイプ)で釘付けにしたと思います。"それ以降の答えはほとんど残っていません。私たちが応答するときにコメントすることができないという混乱がありますか? –
http://learnyouahaskell.com/making-our-own-types-and-typeclassesからのTypeclasses 102のセクションを読んでみてください。 –