package bigstringaf
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=1f0578dd6f9899e30f6fe214e9e376c6e7ea7337782c50ba4819ed876d37861b
md5=c3b8164c1ed1eba9977dcd0c5490e61d
Description
Bigstring intrinsics and fast blits based on memcpy/memmove
The OCaml compiler has a bunch of intrinsics for Bigstrings, but they're not widely-known, sometimes misused, and so programs that use Bigstrings are slower than they have to be. And even if a library got that part right and exposed the intrinsics properly, the compiler doesn't have any fast blits between Bigstrings and other string-like types.
So here they are. Go crazy.
Published: 08 Jul 2021
README
Bigstringaf
The OCaml compiler has a bunch of intrinsics for Bigstrings, but they're not widely-known, sometimes misused, and programs that use Bigstrings are slower than they have to be. And even if a library got that part right and exposed the intrinsics properly, the compiler doesn't have any fast blits between Bigstrings and other string-like types.
So here they are. Go crazy.
Installation
Install the library and its dependencies via OPAM:
opam install bigstringaf
Development
To install development dependencies, pin the package from the root of the repository:
opam pin add -n bigstringaf .
opam install --deps-only bigstringaf
After this, you may install a development version of the library using the install command as usual.
For building and running the tests during development, you will need to install the alcotest
package:
opam install alcotest
make test
License
BSD3, see LICENSE file for its text.
Dependencies (4)
-
conf-pkg-config
build
-
ocaml
>= "4.03.0"
- bigarray-compat
-
dune
>= "2.6.0"
Dev Dependencies (1)
-
alcotest
with-test
Used by (57)
- albatross
-
angstrom
>= "0.10.0"
-
caqti
>= "1.7.0"
-
carton
< "0.7.2"
-
carton-git
< "0.7.2"
-
carton-lwt
< "0.7.2"
- clz
-
comby-kernel
>= "1.7.0"
- compsort
- conan-lwt
-
data-encoding
>= "1.0.0"
-
decompress
>= "1.0.0" & < "1.5.3"
-
docteur
< "0.0.5"
- docteur-solo5
- docteur-unix
- doi2bib
-
dream
< "1.0.0~alpha3"
-
dream-httpaf
< "1.0.0~alpha4"
- dream-pure
-
duff
>= "0.3"
-
emile
>= "0.6"
-
encore
>= "0.4"
-
faraday
>= "0.6.0"
-
git
>= "3.2.0" & < "3.15.0"
- git-cohttp
- git-cohttp-unix
-
git-mirage
< "3.15.0"
- git-paf
-
git-unix
>= "3.2.0" & < "3.15.0"
- gluten
- h1
- h2
-
httpaf
>= "0.6.0"
- httpun-ws
-
irmin
>= "3.5.2"
- ke
-
lmdb
>= "1.0"
- mimic
- mrmime
-
multipart_form
< "0.4.1"
- multipart_form-eio
- multipart_form-lwt
- octez-bls12-381-polynomial
- octez-internal-libs
- octez-libs
- paf
-
piaf
< "0.2.0"
- prettym
-
reparse
< "2.0.0"
- rock
-
sendmail
>= "0.6.0"
- tensorboard
-
tezos-bls12-381-polynomial
>= "0.1.3"
-
tezos-context
>= "12.3"
- unstrctrd
-
uring
< "0.2"
- websocketaf
Conflicts (3)
-
js_of_ocaml
< "3.5.0"
-
ocaml-freestanding
< "0.4.1"
-
mirage-xen
< "6.0.0"