capnp: Cap'n Proto for Haskell

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.


A native Haskell implementation of the Cap'N Proto cerialization format.

This library is currently serialization-only. RPC support is planned but not yet implemented. It works, but bear in mind that the API is considered unstable, and is likely to change to accomodate RPC, facilitate improved performance, etc.

The Data.Capnp.Tutorial module is the best place to start reading; the reference documentation can seem bewildering without that context.

[Skip to ReadMe]


Dependenciesarray (==0.5.*), base (>=4.8 && <5.0), binary (>=0.8.5 && <0.9), bytes (>=0.15.4 && <0.16), bytestring (==0.10.*), capnp, cereal (>=0.5.5 && <0.6), containers (>=0.5.10 && <0.6), cpu (>=0.1.2 && <0.2), data-default (>=0.7.1 && <0.8), data-default-instances-vector (>=0.0.1 && <0.1), directory (>=1.3.0 && <1.4), dlist (>=0.8.0 && <0.9), exceptions (>=0.10.0 && <0.11), filepath (>=1.4.1 && <1.5), mtl (>=2.2.2 && <2.3), primitive (>=0.6.3 && <0.7), reinterpret-cast (>=0.1.0 && <0.2), text (>=1.2 && <2.0), transformers (>=0.5.2 && <0.6), utf8-string (>=1.0.1 && <1.1), vector (>=0.12.0 && <0.13), wl-pprint-text (==1.2.*) [details]
Copyright2016-2018 haskell-capnp contributors (see CONTRIBUTORS file).
AuthorIan Denhardt
CategoryData, Serialization
Home page
Bug tracker
Source repositoryhead: git clone -b master
UploadedThu Aug 30 00:33:21 UTC 2018 by isd




Maintainers' corner

For package maintainers and hackage trustees

Readme for capnp-

[back to package description]

build status

A Haskell library for the Cap'N Proto Cerialization protocol.

Serialization (read & write) support is mostly finished, and already usable, with some limitations:

There is a module Data.Capnp.Tutorial which contains an introduction to the library; users are strongly encouraged to read this first, as the reference documentation can be bewildering without that context.

The API is considered unstable. It will likely see changes, for the sake of polish, consistency, etc. as well as to improve performance and accommodate more features as we add them (RPC in particular will probably require changing some interfaces).