Fast base16 (hex) encoding and decoding for ByteStrings.
Fast base64 encoding and decoding for ByteStrings.
The premise of basic-prelude is that there are a lot of very commonly
desired features missing from the standard Prelude, such as commonly
used operators (<$> and >=>, for instance) and imports for common
datatypes (e.g., ByteString and Vector). At the same time, there are
lots of other components which are more debatable, such as providing
polymorphic versions of common functions.
So basic-prelude is intended to give a common foundation for a number of
alternate preludes. The package provides two modules: CorePrelude
provides the common ground for other preludes to build on top of, while
BasicPrelude exports CorePrelude together with commonly used list
functions to provide a drop-in replacement for the standard Prelude.
Users wishing to have an improved Prelude can use BasicPrelude.
Developers wishing to create a new prelude should use CorePrelude.
Atomic operations including CAS (compare-and-swap), fetch & add and variants
suitable for low-level shared-memory synchronization. The implementation
is using GCC's builtin atomic operations (available in GCC >= 4) in C
wrappers called through the FFI.
This package integrates the builders from the blaze-builder package with
the enumerator package. It provides infrastructure and enumeratees for
incrementally executing builders and pass the filled chunks to a bytestring
iteratee.
This library provides an abstraction of buffered output of byte streams and
several convenience functions to exploit it. For example, it allows to
efficiently serialize Haskell values to lazy bytestrings with a large average
chunk size. The large average chunk size allows to make good use of cache
prefetching in later processing steps (e.g. compression) and reduces the sytem
call overhead when writing the resulting lazy bytestring to a file or sending
it over the network.
A library for efficiently rendering Haskell datatypes to bytestrings.
Pure and impure Bloom Filter implementations.
A pretty-printing library for laying out text in two dimensions, using a
simple box model.