I'm no edison expert but it seems the problem simply is that you're using overloaded functions and the compiler can't tell which instance you're trying to use. Try adding a type signature to the definition of sorted (I'm not familiar enough with edision to know what the type is) but something like: let sorted = ... :: SOMETYPEHERE hopefully someone will provide a more complete answer soon, but since no one has replied yet... - Hal -- Hal Daume III "Computer science is no more about computers | hdaume@isi.edu than astronomy is about telescopes." -Dijkstra | www.isi.edu/~hdaume On Tue, 30 Jul 2002 paul@theV.net wrote:
I am quite confused with the collection package provided by the edison library. Attached is a sample program, what I wanted to do is to maintain a sorted of Pair of id and time (sorted by time). The error I got is:
ghc -package data -package lang test.hs
test.hs:17: No instance for `Collection.OrdColl c Pair' arising from use of `Collection.minElem' at test.hs:17 in a pattern binding: Collection.minElem sorted
Actually I don't really understand what a class like "OrdColl c a" really means and how to use them. Please help!
Regards, .paul.