streamly-bytestring alternatives and similar packages
Based on the "ByteString" category.
Alternatively, view streamly-bytestring alternatives based on common mentions on social networks and blogs.
bytestringAn efficient compact, immutable byte string type (both strict and lazy) suitable for binary or 8-bit character data.
bytestring-tree-builderA very efficient ByteString builder implementation based on the binary tree
bytestring-builderThe new bytestring builder, packaged outside of GHC
bytestring-arbitraryArbitrary instances for ByteString
stringableA Stringable type class, in the spirit of Foldable and Traversable
bsparse4.0 0.0 streamly-bytestring VS bsparsebytestring parser
bytestring-readfast ByteString to number converting library
pathological-bytestringsFacilities for testing with ByteStrings
bytestring-plainPlain byte strings (`ForeignPtr`-less `ByteString`s)
bytestring-conversionType-classes to convert values to and from ByteString.
bytestring-typenatsHaskell ByteStrings annotated with type-level naturals for lengths
bytestring-delta0.8 0.0 L4 streamly-bytestring VS bytestring-deltaSimple binary diff/patch library for C and Haskell
Static code analysis for 29 languages.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of streamly-bytestring or a related project?
Library for streamly and bytestring interoperation.
If you are writing code from scratch, please use
is a generalization of
ByteString and better integrated with streamly.
This library is to enable interoperation of streamly with existing code that
The package provides APIs to interconvert between strict
Array Word8 and between lazy
Bytestring and stream of
The interconversion in the case of strict
Bytestring and streamly
Word8 has no overhead as the underlying representation of ByteString and Array
are the same, we just need to rewrap the data in a different type.
This is a dumb program that counts the number of bytes in a file.
import Streamly import qualified Streamly.Prelude as S import qualified Data.ByteString as BS import qualified Data.ByteString.Lazy as BSL import qualified Streamly.External.ByteString as Strict import qualified Streamly.External.ByteString.Lazy as Lazy import System.IO (FilePath) strictByteStringSize :: BS.ByteString -> IO Int strictByteStringSize bs = S.length $ S.unfold Strict.read bs lazyByteStringSize :: BSL.ByteString -> IO Int lazyByteStringSize bsl = S.foldl' (+) 0 $ S.mapM strictByteStringSize $ S.map Strict.fromArray $ Lazy.toChunks bsl fileSize :: FilePath -> IO Int fileSize path = do bsl <- BSL.readFile path lazyByteStringSize bsl