edison question

Dan Weston ddweston@cinesite.com
Wed, 31 Jul 2002 10:15:43 -0700 (PDT)


The author of edison, Chris Okasaki, wrote a book called "Purely 
Functional Data Structures" (Cambridge University Press). It goes a long 
way toward explaining the rationale of many of the structures.

On Wed, 31 Jul 2002 paul@theV.net wrote:

> Thanks, and it works! Another question is where can I find some
> documentation on these heap modules? What is the difference
> between SkewHeap, LazyPairingHeap, SplayHeap, UnbalancedSet, etc?
> 
> I couldn't find any in GHC's documentation.
> 
> Regards,
> .paul.
> 
> On Tue, Jul 30, 2002 at 11:22:26AM -0700, Brian Huffman wrote:
> > The Collection module just defines the OrdColl class, without giving any 
> > instances for it. To use the Collection module directly, you would have to 
> > define one or more instances yourself, something like this:
> > 
> > data Bag a = ...
> > instance OrdColl Bag a where
> >   insert a c = ...
> >   minElem c = ...
> >   ...
> > 
> > But I assume that you don't want to implement your own collection datatype or 
> > write your own insert, minElem, etc. Luckily, Edison comes with a few 
> > pre-defined instances of OrdColl, each in a separate module. You just have to 
> > import the one you want.
> > 
> > Replace the line
> > > import qualified Collection as C
> > with
> > > import qualified SkewHeap as C
> > (or LazyPairingHeap, or SplayHeap, or UnbalancedSet) and it should work fine.
> > 
> > Hope this helps.
> > - Brian Huffman
> > 
> _______________________________________________
> Haskell mailing list
> Haskell@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell
>