I'm implementing a simple non-strict purely functional interpreter
in Haskell, and I need to implement a heap so that I can count
the number of heap access/updates/reductions etc.
So far I've been using a balanced binary tree with heap cells at
its leaves, however this is proving to be a bottle neck.
I'd like to know how well different implementations of Haskell
implement arrays. Hugs appears to have a good implementation,
with STArray.hs, but is the equivalent available for a compiler?
cheers,
Mike