Re: Summary of containers patches

From: Don Stewart
On 24 September 2010 14:36, Michael Snoyman
wrote: On Fri, Sep 24, 2010 at 6:26 AM, Don Stewart
wrote: Perhaps a containers-inline fork is needed, for those who still need
ivan.miljenovic: the speed.
Would it be possible to use CPP to turn the INLINE flags into a compile-time argument, ie:
#ifdef INLINE {-# INLINE #-} #endif
Since containers ships with GHC, wouldn't this then require an extra flag being used when building GHC to enable this?
And then to use it, you'd have to build your own GHC rather than using a pre-built binary like just about everyone does...
I'd hate to start seeing incompatible Data.Map.Maps floating around.
Agreed. At the very least if there was a fork it would presumably have to be in a different module namespace to avoid namespace collisions, which would make the incompatability obvious.
We're talking about a 3% increase in the size of the Map, a 2% size in the Map.hs benchmark binary, right?
For a 50% increase in Map function performance.
I agree. The benefits are significant, and Map is one of the most fundamental (and widely-used) data structures in the language. The binary size increase just doesn't seem important in comparison. John
participants (1)
-
John Lato