binary icon indicating copy to clipboard operation
binary copied to clipboard

Efficient, pure binary serialisation using ByteStrings in Haskell.

Results 58 binary issues
Sort by recently updated
recently updated
newest added

Brought up [here](https://cardano.org/wp-content/uploads/2018/08/report.pdf#%5B%7B%22num%22%3A12%2C%22gen%22%3A0%7D%2C%7B%22name%22%3A%22XYZ%22%7D%2C62.692913386%2C597.699302373%2C0%5D). Check that the keys of `Set`/`Map`/`IntSet`/`IntMap` really are ascending when deserializing. **This requires adding an extra `Ord` constraint to the `Set` and `Map` instances**. If the keys...

Previously, `TypeRep (a -> b)` could only be deserialized if `a` and `b` both had kind `*`. Change that to allow any kinds of the form `TYPE rep`. Fixes #140

Hi, I've just run into the following situation, while trying to figure out why cross compiling template haskell to raspberry pi doesn't work anymore. I believe it used to work...

Deserialized `TypeRep`s don't share any structure with each other, which can potentially waste a lot of space. For example, if I fill a giant `Set` with deserialized `Dynamic` values, the...

We can't currently deserialize arrow types `p -> q` when `p` or `q` have non-`*` kinds. See https://phabricator.haskell.org/D4137

``` .hs instance Binary (Proxy a) where put _ = put () get = (get :: Get ()) $> Proxy ``` or some such. "base:Data.Proxy - Since: 4.7.0.0"

Turned out it's easy to fix the slow `runGetIncremental` problem: just provide an initial chunk, so that a small getter will return `Done` quickly. The `noMeansNo` and extra `Decoder` still...

After some profiling, i came to the conclusion that current running logic is too complex, in order to support `bytesRead`, we have two `Decoder` type, the overhead of `runGetIncremental` is...

I heard on IRC that this should never be the case, so I provided a benchmarked counterexample https://github.com/ghorn/binary-counterexample stats here: http://ghorn.github.io/binary-counterexample/