package bigstringaf

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

Install

Dune Dependency

Authors

Maintainers

Sources

bigstringaf-0.4.0.tbz
sha256=cdd8073687f56d4d60d71a013b228cf6e05f184a4a93988b3166df5a262fb1c6
md5=d1ff1ab40aad48627686f9b8c02d985a

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: 26 Oct 2018

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. base-bigarray
  3. jbuilder >= "1.0+beta10"

Dev Dependencies (1)

  1. alcotest with-test

Used by (38)

  1. albatross >= "1.1.0"
  2. angstrom >= "0.10.0"
  3. caqti >= "1.7.0"
  4. clz
  5. comby-kernel >= "1.7.0"
  6. compsort
  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. decompress >= "1.0.0" & < "1.5.3"
  13. doi2bib >= "0.4.0"
  14. duff >= "0.3"
  15. emile >= "0.6"
  16. faraday >= "0.6.0"
  17. git >= "3.0.0" & < "3.3.1" | >= "3.4.0" & < "3.9.1"
  18. git-paf >= "3.5.0"
  19. git-unix >= "3.0.0" & < "3.9.1"
  20. gluten
  21. h1
  22. httpaf >= "0.6.0"
  23. httpun-ws
  24. irmin >= "3.2.0"
  25. ke
  26. lmdb >= "1.0"
  27. mrmime < "0.2.0"
  28. multipart_form < "0.2.0"
  29. multipart_form-eio
  30. multipart_form-lwt
  31. prettym
  32. reparse < "2.0.0"
  33. sendmail >= "0.6.0"
  34. tensorboard
  35. tezos-context >= "11.0" & < "16.0"
  36. unstrctrd
  37. uring < "0.2"
  38. websocketaf

Conflicts (2)

  1. ocaml-freestanding < "0.4.1"
  2. mirage-xen-posix < "3.1.0"
OCaml

Innovation. Community. Security.