Christian Maeder <Christian.Maeder <at> dfki.de> writes: > Will Ness schrieb: > > I meant strictly increasing ordered lists, without multiples, for which the two > > operations, 'merge' and 'minus', would also have to produce like lists, i.e > > strictly increasing, without multiples. > > Why don't you use directly Data.Set?
It says it's based on size balanced Trees? I initially wondered why no such fundamental operations as merge and minus for _lists_, in the stadard libraries? Also, its to/from list conversions are O(n), so probably won't work for infinite lists. I was told the trend is to move specifics to hackage packages, but I wonder why shouldn't such fundamental operations be just included in standard Data.List? > > I guess the first variety is more appropriate for bags, and the second one > > - for sets. The two would have to be de-conflated for that. (?) > > There are also bags aka multisets: > http://hackage.haskell.org/package/multiset it's too seems to be based on trees. Data.Ordlist seems to be a good match, except for its conflation of ascending/non-decreasing lists under one "ordered" category (i.e. sets/bags distinction). _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe