What about AString or AnyString?
> -----Original Message----- > From: haskell-boun...@haskell.org [mailto:haskell-boun...@haskell.org] > On Behalf Of Chris Kuklewicz > Sent: Friday, March 06, 2009 8:17 PM > To: Matthew Pocock > Cc: haskell@haskell.org > Subject: Re: [Haskell] string type class > > Matthew Pocock wrote: > > It seems every time I look at hackage there is yet another stringy > > datatype. For lots of apps, the particular stringy datatype you use > > matters for performance but not algorithmic reasons. Perhaps this is > a > > good time for someone to propose a stringy class? > > Not likely. > > I did define my own (private) class for regular expressions, to > abstract over > String, the ByteStrings, and Seq Char. But it is used in one place and > is a > wart that should be removed. > > The simple task of looping over the contents of a String (once, > forward) is > quite different from a Strict ByteString (using an index and a lookup). > > This means for decent efficiency I need two copies of my code, hand > specialized > to each case. > > "tail" or "(x:xs)" : very efficient for String (no allocation) > "tail" or "uncons" : not efficient for ByteString (allocation, might as > well > convert to [Char] > > And indexing by Int is O(n) for String and O(1) for ByteString. > > So there are few algorithm that can access both efficiently. > > _______________________________________________ > Haskell mailing list > Haskell@haskell.org > http://www.haskell.org/mailman/listinfo/haskell _______________________________________________ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell