The spool package

[Tags:bsd3, library]

This library allows conversion between the types from Data.ByteString (package bytestring) and Data.Vector.Storable (package vector) without copying the underlying data. This is useful, for example, when ByteString IO produces or consumes vectors of numbers in native byte order.

This trick relies on the fact that ByteString and Vector use their respective ForeignPtrs in compatible ways. It works with bytestring- and vector-0.9 on GHC 7.0. It may break with future releases of these packages. Depending on this library should be seen as a way to document and standardize an existing hack, and not as an absolute guarantee of correct behavior.

[Skip to Readme]


Versions 0.1
Dependencies base (>=3 && <5), bytestring (>=0.9), vector (>=0.7) [details]
License BSD3
Author Keegan McAllister <>
Maintainer Keegan McAllister <>
Stability Unknown
Category Data Structures
Source repository head: git clone git://
Uploaded Thu Sep 15 03:44:31 UTC 2011 by KeeganMcAllister
Distributions LTSHaskell:0.1, NixOS:0.1, Stackage:0.1
Downloads 1910 total (1 in the last 30 days)
0 []
Status Docs uploaded by user
Build status unknown [no reports yet]




Maintainer's Corner

For package maintainers and hackage trustees

Readme for spool

Readme for spool-0.1

spool provides conversion between ByteString and Vector.Storable without
copying the underlying data.

Documentation is hosted at

To build the documentation yourself, run

  $ cabal configure && cabal haddock --hyperlink-source

This will produce HTML documentation under dist/doc/html/spool.