package bigstringaf

  1. Overview
  2. Docs
Bigstring intrinsics and fast blits based on memcpy/memmove

Install

Dune Dependency

Authors

Maintainers

Sources

0.6.1.tar.gz
md5=dccf639273b1eec0e0f142f21319268d

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: 16 Feb 2020

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 (3)

  1. ocaml >= "4.03.0"
  2. bigarray-compat
  3. dune >= "1.0"

Dev Dependencies (1)

  1. alcotest with-test

Used by (47)

  1. albatross >= "1.1.0"
  2. angstrom >= "0.10.0"
  3. apero-core
  4. caqti >= "1.7.0"
  5. clz
  6. comby-kernel >= "1.7.0"
  7. conan-lwt >= "0.0.2"
  8. conduit-async = "3.0.0"
  9. conduit-lwt = "3.0.0"
  10. conduit-mirage = "3.0.0"
  11. conduit-tls
  12. data-encoding >= "1.0.0"
  13. decompress >= "1.0.0" & < "1.5.3"
  14. doi2bib >= "0.4.0"
  15. dream < "1.0.0~alpha3"
  16. dream-httpaf
  17. dream-pure
  18. duff >= "0.3"
  19. emile >= "0.6"
  20. encore >= "0.4"
  21. faraday >= "0.6.0"
  22. functoria >= "4.4.0"
  23. git >= "3.0.0" & < "3.3.1" | >= "3.4.0" & < "3.9.1"
  24. git-paf >= "3.5.0"
  25. git-unix >= "3.0.0" & < "3.9.1"
  26. gluten
  27. h2
  28. httpaf >= "0.6.0"
  29. irmin >= "3.2.0"
  30. ke
  31. lmdb >= "1.0"
  32. mrmime
  33. multipart_form < "0.2.0"
  34. multipart_form-eio
  35. multipart_form-lwt
  36. octez-bls12-381-polynomial
  37. octez-libs
  38. prettym
  39. reparse < "2.0.0"
  40. rock
  41. sendmail >= "0.6.0"
  42. tensorboard
  43. tezos-bls12-381-polynomial >= "0.1.3"
  44. tezos-context >= "11.0"
  45. unstrctrd
  46. uring < "0.2"
  47. websocketaf

Conflicts (3)

  1. js_of_ocaml < "3.5.0"
  2. ocaml-freestanding < "0.4.1"
  3. mirage-xen-posix < "3.1.0"