[Haskell-cafe] ANNOUNCE: binary: high performance, pure binary serialisation

Duncan Coutts duncan.coutts at worc.ox.ac.uk
Thu Feb 1 05:35:11 EST 2007


On Thu, 2007-02-01 at 10:47 +0300, Bulat Ziganshin wrote:
> Hello Duncan,
> 
> Thursday, February 1, 2007, 3:39:16 AM, you wrote:
> 
> >> > Can anyone see a real serialisation use case that needs a monad for the
> >> > serialisation side? I'd thought I had an example, but I was wrong.
> >> 
> >> my program, FreeArc, has its own compression level on top of
> >> serializing - i.e. data serialized sent in 64k blocks to the C
> >> compression routine and both serialization and compression are run at
> >> the same time using threads
> 
> i mean that in real world, programs may need to do something in IO
> monad - work with database, network, call C libs

Most of this can be done in a modular and mostly pure way. In that
example I gave, the compression function - while pure - was of course
calling out to a C library.

As an example of a real world program that uses this stuff and does
networking, keeps a persistent store and calls C libs, see
http://hpaste.org/

It uses HappS, ByteStrings and stores the pastes in compressed form on
disk (using my pure zlib wrapper library).

Duncan



More information about the Haskell-Cafe mailing list