[Haskell] ANNOUNCE: fps -- fast packed strings

Donald Bruce Stewart dons at cse.unsw.edu.au
Thu Aug 25 07:48:39 EDT 2005

> Hello Donald,
> Thursday, August 25, 2005, 8:10:44 AM, you wrote:
> DBS> I've cabalised the FastPackedString module from darcs, used in h4sh, as the
> DBS> `fps' library.
> if you plan to support/improve this library, can you please:

I intend to further clean up this code, and also some profiling and
quichchecking -- at the moment it is fresh from the darcs-unstable
branch. However, before doing more than just clean ups, I'd be inclined
to see SimonM's code (rumour has it that he has some fast IO module in
the works).
> 1) add psniceq/pscmp to export list (with better names, smtg like
> eqPS/cmpPS)


> 2) add case-ignoring-versions of these operations (i want to use
> packed strings to represent filenames, and under Windows filenames are
> case-insensetive, while under Unix is not)

Hmm. Couldn't you just mapPS toLower ? We don't have case-ignoring
versions of any List functions, so it seems strange to have them here.

> about details of realization - is not it better to use just memcmp to
> implement pscmp and also "psniceq a b  =  (pscmp a b) == EQ" ?

I would think so, yes. I'll have to work out why it has been written the
way has been.

> imho, such library must be included in GHC itself - sooner or later.
> using 8-times memory representation for ordinary strings is just
> disastrous for some projects


-- Don

More information about the Haskell mailing list