Thanks for the feedback, Ralf - we agreed with Alastair a month or two
ago on a common set of interfaces for mutable variables and arrays (in
both IO and ST) etc., which I believe is included in the latest Hugs
snapshots. We simply didn't get around to doing it for 2.05, I'm
afraid - hopefully ghc-2.06 will have them included. (GlaExts stays, BTW).

The Idea is to freeze these interfaces (really!) once we're reasonably
sure that people like them. 

We didn't discuss this, but perhaps a separate LazyST might be in
order.

--Sigbjorn

Ralf Hinze writes:
> Dear Alastair, dear Simon, dear Sigbjorn,
> 
> as I see that you are currently striving for compatibility I'd like to
> mention some further discrepancies regarding the ST monad:
> 
> o GHC:  ST exports `MutableVar', `MutableArray', `newArray' ...
>         except `freezeArray' which hides in `MutableArray'
>         (furthermore one must additionally import Array,
>          or was it Ix?)
> o Hugs: ST exports `MutVar' but not `MutArr' which resides
>         in STArray
> 
> It would be wonderful if both GHC and Hugs would use the same module
> structure and the same names.
> 
> o GHC provides fixST, but not Hugs, IMHO `fixST' is sometimes really
>   useful.
> o Neither makes ST a an instance of Functor.
> 
> Cheers, Ralf

Reply via email to