#86: Proposal: Add Package: binary ------------------------------+--------------------------------------------- Reporter: dons | Owner: dons Type: defect | Status: new Priority: major | Milestone: 2009.4.0 Component: Package Addition | Resolution: Keywords: | ------------------------------+--------------------------------------------- Old description:
> http://www.haskell.org/pipermail/libraries/2009-August/012231.html > > * Proposal discussion threads: > http://www.haskell.org/pipermail/libraries/2009-August/012257.html > > * Package name: binary > * Package url: http://hackage.haskell.org/package/binary > * Package category: Data > * Package cabal file : > http://hackage.haskell.org/packages/archive/binary/0.5.0.1/binary.cabal > > ||'''Heuristic'''||'''Status'''||'''Notes'''|| > ||What functionality does the package provide?||Efficient, pure binary > serialisation using lazy ByteStrings. Haskell values may be encoded to > and from binary formats, written to disk as binary, or sent over the > network.|||| > ||What language features/extensions does the package > require?||CPP,FlexibleContexts|||| > ||How popular is the package in > [http://www.galois.com/~dons/hackage/popularity.html Hackage > downloads]?|| Rank 6 / 1200|||| > ||How many packages depend on this package (what does it enable to > build)?|| [http://aur.archlinux.org/packages.php?ID=19402 68 packages] > |||| > ||Do any applications of note depend on this package?|| yi|||| > ||Does it provide some foundational, general purpose > functionality?||parsing binary data from streams of bytes|||| > ||Are there equivalent libraries in the Python (or other) > [http://docs.python.org/library/ base libraries]?|| Yes, > "[http://docs.python.org/library/struct.html struct] - Interpret strings > as packed binary data", though this is more general |||| > ||Is this package portable to all platforms?|| Yes, and to Hugs|||| > ||Does this package require additional C libraries?|| No|||| > ||Does the package follow the > [http://www.haskell.org/haskellwiki/Package_versioning_policy package > versioning policy]?|| Yes. |||| > ||Is the code of high quality?|| Yes. |||| > ||What is the bug history of this code?|| There have been a handful of > bugs, none in the last 3 or so releases |||| > ||Is the code [http://www.haskell.org/cabal/ cabalized] and hosted on > [http://hackage.haskell.org/packages/archive/pkg-list.html Hackage]?|| > Yes|||| > ||Does it build with cabal-install?|| Yes|||| > ||Does it provide [http://www.haskell.org/haddock/ haddock > documentation]?|| > [http://hackage.haskell.org/packages/archive/binary/0.5.0.1/doc/html > /Data-Binary.html Yes]|||| > ||Does it have a test suite? Does it have test coverage data?|| Yes, > [http://code.haskell.org/~dons/tests/binary/hpc_index.html Yes]. |||| > ||Who is the maintainer of the code?|| Lennart Kolmodin, Don Stewart |||| > ||Does the package add new dependencies?|| No. |||| > ||Does the package build with build-style: Simple?|| Yes. |||| > ||Does this package duplicate existing functionality in the Haskell > Platform?|| No. |||| > ||Does the package reuse types and data from the Haskell Platform? What > types does it define?|| It reuses lazy bytestrings, and base word types > |||| > ||Does the package use the hierarchical naming conventions?|| Yes. |||| > ||Does the package build with -Wall?|| Yes. |||| > ||Does the package have performance figures/complexity annotations?|| It > has performance figures. |||| > ||What license does the library have?||BSD3|||| > ||Is the library "Haskell-ish"?|| It provides a purely functional, lazy > interface to binary encoding/decoding.|||| > ||Is the library thread safe?||Yes. |||| > ||Is the package a stop-gap for a more general solution?|| A strict > version would also be useful.|||| > ||What other packages provide similar functionality?|| binary-strict, > attoparsec to some degree, various bit parsing libs |||| > ||Will the maintainer adhear to the release schedule for the platform?|| > Yes.|||| > ||Other relevant criteria?|| |||| > > Action Items > > * Establish benchmarks for the default instances shipped with Binary. > * Krasimir confirms stack overflows and performance issues of > concern have gone. > * Documentation for how to catch parse failures with Binary > * An easier to catch failure mode. > * Variable width encoding for Int instance? New description: http://www.haskell.org/pipermail/libraries/2009-August/012231.html * Proposal discussion threads: http://www.haskell.org/pipermail/libraries/2009-August/012257.html * Package name: binary * Package url: http://hackage.haskell.org/package/binary * Package category: Data * Package cabal file : http://hackage.haskell.org/packages/archive/binary/0.5.0.1/binary.cabal ||'''Heuristic'''||'''Status'''||'''Notes'''|| ||What functionality does the package provide?||Efficient, pure binary serialisation using lazy ByteStrings. Haskell values may be encoded to and from binary formats, written to disk as binary, or sent over the network.|||| ||What language features/extensions does the package require?||CPP,FlexibleContexts|||| ||How popular is the package in [http://www.galois.com/~dons/hackage/popularity.html Hackage downloads]?|| Rank 6 / 1200|||| ||How many packages depend on this package (what does it enable to build)?|| [http://aur.archlinux.org/packages.php?ID=19402 68 packages] |||| ||Do any applications of note depend on this package?|| yi|||| ||Does it provide some foundational, general purpose functionality?||parsing binary data from streams of bytes|||| ||Are there equivalent libraries in the Python (or other) [http://docs.python.org/library/ base libraries]?|| Yes, "[http://docs.python.org/library/struct.html struct] - Interpret strings as packed binary data", though this is more general |||| ||Is this package portable to all platforms?|| Yes, and to Hugs|||| ||Does this package require additional C libraries?|| No|||| ||Does the package follow the [http://www.haskell.org/haskellwiki/Package_versioning_policy package versioning policy]?|| Yes. |||| ||Is the code of high quality?|| Yes. |||| ||What is the bug history of this code?|| There have been a handful of bugs, none in the last 3 or so releases |||| ||Is the code [http://www.haskell.org/cabal/ cabalized] and hosted on [http://hackage.haskell.org/packages/archive/pkg-list.html Hackage]?|| Yes|||| ||Does it build with cabal-install?|| Yes|||| ||Does it provide [http://www.haskell.org/haddock/ haddock documentation]?|| [http://hackage.haskell.org/packages/archive/binary/0.5.0.1/doc/html/Data- Binary.html Yes]|||| ||Does it have a test suite? Does it have test coverage data?|| Yes, [http://code.haskell.org/~dons/tests/binary/hpc_index.html Yes]. |||| ||Who is the maintainer of the code?|| Lennart Kolmodin, Don Stewart |||| ||Does the package add new dependencies?|| No. |||| ||Does the package build with build-style: Simple?|| Yes. |||| ||Does this package duplicate existing functionality in the Haskell Platform?|| No. |||| ||Does the package reuse types and data from the Haskell Platform? What types does it define?|| It reuses lazy bytestrings, and base word types |||| ||Does the package use the hierarchical naming conventions?|| Yes. |||| ||Does the package build with -Wall?|| Yes. |||| ||Does the package have performance figures/complexity annotations?|| It has performance figures. |||| ||What license does the library have?||BSD3|||| ||Is the library "Haskell-ish"?|| It provides a purely functional, lazy interface to binary encoding/decoding.|||| ||Is the library thread safe?||Yes. |||| ||Is the package a stop-gap for a more general solution?|| A strict version would also be useful.|||| ||What other packages provide similar functionality?|| binary-strict, attoparsec to some degree, various bit parsing libs |||| ||Will the maintainer adhear to the release schedule for the platform?|| Yes.|||| ||Other relevant criteria?|| |||| Action Items * Establish benchmarks for the default instances shipped with Binary. * Krasimir confirms stack overflows and performance issues of concern have gone. * Documentation for how to catch parse failures with Binary (via evaluate/catch). * An easier to catch failure mode. * Variable width encoding for Int instance? * a piece of documentation on the side could do until haddock supports documenting instances -- Ticket URL: <http://trac.haskell.org/haskell-platform/ticket/86#comment:4> haskell-platform <http://trac.haskell.org/haskell-platform> The Haskell Platform: a comprehensive and robust collection of Haskell libraries _______________________________________________ Haskell-platform mailing list Haskell-platform@projects.haskell.org http://projects.haskell.org/cgi-bin/mailman/listinfo/haskell-platform