Kevin Jardine <[email protected]> writes: > Almost every modern programming language has one or at most two > standard representations for strings.
> That includes PHP, Python, Ruby, Perl and many others. The lack of a > standard text representation in Haskell has created a crazy patchwork > of incompatible libraries requiring explicit and often inefficient > conversions to connect them together. Haskell does have a standard representation for strings, namely [Char]. Unfortunately, this sacrifices efficiency for elegance, which gives rise to the plethora of libraries. > I end up with a program littered with ugly > pack, unpack, toString, fromString and similar calls. Some of this can be avoided using a language extension that let you overload string constants. There are always trade offs, and no one solution will fit all: UTF-8 is space efficient while UTF-16 is time efficient (at least for certain classes of problems and data). It does seem that it should be possible to unify the various libraries wrapping bytestrings (CompactString, ByteString.UTF8 etc), however. -k -- If I haven't seen further, it is by standing in the footprints of giants _______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
