gnu: Add ocaml-bigstringaf.

* gnu/ocaml/packages.scm (ocaml-bigstringaf): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
This commit is contained in:
pukkamustard 2021-06-01 20:22:58 +00:00 committed by Julien Lepiller
parent c729d98610
commit 6f4f9c4d55
No known key found for this signature in database
GPG key ID: 53D457B2D636EE82

View file

@ -6591,3 +6591,37 @@ (define-public ocaml-reactivedata
signals. React doesn't define any primitive event or signal, it lets the signals. React doesn't define any primitive event or signal, it lets the
client chooses the concrete timeline.") client chooses the concrete timeline.")
(license license:lgpl2.1+))) (license license:lgpl2.1+)))
(define-public ocaml-bigstringaf
(package
(name "ocaml-bigstringaf")
(version "0.7.0")
(home-page "https://github.com/inhabitedtype/bigstringaf")
(source
(origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1q1sqxzdnlrpl95ccrhl7lwy3zswgd9rbn19ildclh0lyi2vazbj"))))
(build-system dune-build-system)
(arguments
'(#:test-target "."))
(propagated-inputs
`(("ocaml-bigarray-compat" ,ocaml-bigarray-compat)))
(native-inputs
`(("ocaml-alcotest" ,ocaml-alcotest)
("pkg-config" ,pkg-config)))
(synopsis
"Bigstring intrinsics and fast blits based on memcpy/memmove")
(description
"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. @code{bigstringaf} provides
these missing pieces.")
(license license:bsd-3)))