Alberto G. Corona wrote:
but because keys and data must be of the same type, you are restricted to instances of Eq and Ord. Itsn“n true?

2008/12/11 Andrew Coppin <andrewcop...@btinternet.com <mailto:andrewcop...@btinternet.com>>

    Alberto G. Corona wrote:

        Well, you have not to use typeable, but instead you need to
        use instances of Eq and Ord. This is because the values and
        the keys must be of the same type. this is the  tradeoff.


    Not really, no. The *keys* need Eq and Ord, but the values I'm
    storing don't. The values I'm storing don't need any specific
    properties at all. That's what I like about it.



No. Keys are of type "Key v", where "v" can be anything. It's a phantom type, so it's not used for anything (except knowing what to coerce the value back to when it's looked up). "Key v" is just an alias to Int, which *is* in Eq and Ord, as required. There are no constraints on "v" at all.

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to