
Is it too late to ask that Data.FiniteMap not die just yet? There are a number of progs/libs that this affects. It's not that people do not want to use the new Data.Map, but people are worried about having to drop support for earlier compilers. Data.Map only appeared in 6.4 iirc. So this forces packages to drop support for 5.04, 6.0 and 6.2. Perhaps 5.04 and 6.0 are not so important, but many people still use 6.2.2, particularly institutions, which tend to be slow to upgrade. I think there is a wrapper somewhere that provides the old Data.FiniteMap in terms of the Data.Map implementation. Could we use something like that in base for at least one more release? By the time of 6.8 I think people will be less concerned as 6.2 will be quite old by that time. Duncan

I would advise against using a wrapper, because that will probably
change the behaviour of FiniteMap in subtle ways (recall the left-bias
stuff), laying the pavement for future headaches.
Cheers,
JP.
On 9/4/06, Duncan Coutts
Is it too late to ask that Data.FiniteMap not die just yet?
There are a number of progs/libs that this affects. It's not that people do not want to use the new Data.Map, but people are worried about having to drop support for earlier compilers. Data.Map only appeared in 6.4 iirc. So this forces packages to drop support for 5.04, 6.0 and 6.2. Perhaps 5.04 and 6.0 are not so important, but many people still use 6.2.2, particularly institutions, which tend to be slow to upgrade.
I think there is a wrapper somewhere that provides the old Data.FiniteMap in terms of the Data.Map implementation. Could we use something like that in base for at least one more release? By the time of 6.8 I think people will be less concerned as 6.2 will be quite old by that time.
Duncan
_______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

On Mon, 2006-09-04 at 14:06 +0200, Duncan Coutts wrote:
Is it too late to ask that Data.FiniteMap not die just yet?
There are a number of progs/libs that this affects. It's not that people do not want to use the new Data.Map, but people are worried about having to drop support for earlier compilers. Data.Map only appeared in 6.4 iirc. So this forces packages to drop support for 5.04, 6.0 and 6.2. Perhaps 5.04 and 6.0 are not so important, but many people still use 6.2.2, particularly institutions, which tend to be slow to upgrade.
Just a couple other data points: * 6.4 was never stable * 6.4.1 is not even marked stable in debian yet (only 6.2.2 is stable) * 6.4.1 was only marked stable in gentoo in March of this year (6.4.2 was marked stable in August) It's true that packages could use an external compat Data.FiniteMap but that causes problems too of course. The Cabal conditional configurations feature is not available yet. Duncan

On Mon, Sep 04, 2006 at 02:32:34PM +0200, Duncan Coutts wrote:
* 6.4.1 is not even marked stable in debian yet (only 6.2.2 is stable)
Debian doesn't have a concept of "marked stable". 6.4.1 didn't exist when sarge was released, so it has not yet had a chance to be included in a stable release. FWIW, I'm in favour of removing FiniteMap. Thanks Ian

Duncan Coutts
Is it too late to ask that Data.FiniteMap not die just yet?
FWIW, I'm in favour of retaining Data.FiniteMap for ghc-6.6, to be removed only in 6.8.
There are a number of progs/libs that this affects. It's not that people do not want to use the new Data.Map, but people are worried about having to drop support for earlier compilers.
I'll add my support to this argument.
I think there is a wrapper somewhere that provides the old Data.FiniteMap in terms of the Data.Map implementation.
Darcs patch attached, if it is of interest. Regards, Malcolm

Malcolm Wallace schrieb:
I think there is a wrapper somewhere that provides the old Data.FiniteMap in terms of the Data.Map implementation.
Darcs patch attached, if it is of interest.
This patch does not have the functions: foldFM_GE, fmToList_GE, keysFM_GE, eltsFM_GE, foldFM_LE, fmToList_LE, keysFM_LE, eltsFM_LE, Currently I need to replace fmToList_LE and keysFM_LE. Does someone have code for these (in terms of Data.Map)? Christian

I've copied the old code from Data.FiniteMap and only implemented: foldFM_LE f v k = Map.foldWithKey (\ i w c -> if i > k then c else f i w c) v Christian Maeder schrieb:
Malcolm Wallace schrieb:
I think there is a wrapper somewhere that provides the old Data.FiniteMap in terms of the Data.Map implementation. Darcs patch attached, if it is of interest.
This patch does not have the functions: foldFM_GE, fmToList_GE, keysFM_GE, eltsFM_GE, foldFM_LE, fmToList_LE, keysFM_LE, eltsFM_LE,
Currently I need to replace fmToList_LE and keysFM_LE. Does someone have code for these (in terms of Data.Map)?
Christian
participants (6)
-
Christian Maeder
-
Duncan Coutts
-
Ian Lynagh
-
Jean-Philippe Bernardy
-
Malcolm Wallace
-
Tomasz Zielonka