guix_mirror_bot pushed a commit to branch ocaml-team
in repository guix.
commit f62935631b8ff3992b24d2d9fb9671809293ce2c
Author: Jason Conroy <[email protected]>
AuthorDate: Thu Feb 12 10:26:33 2026 -0500
gnu: ocaml5: Add ocaml-bigstringaf.
* gnu/packages/ocaml5.scm (ocaml-bigstringaf): New variable.
Change-Id: Ia0d55c248413c940e87d91da28c231dda222e913
Signed-off-by: Julien Lepiller <[email protected]>
---
gnu/packages/ocaml5.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/gnu/packages/ocaml5.scm b/gnu/packages/ocaml5.scm
index a4dc7e03cc..30ce55a332 100644
--- a/gnu/packages/ocaml5.scm
+++ b/gnu/packages/ocaml5.scm
@@ -2897,6 +2897,33 @@ document and by the text width.")
OCaml compilers.")
(license license:expat)))
+(define-public ocaml-bigstringaf
+ (package
+ (name "ocaml5-bigstringaf")
+ (version "0.9.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 "188j9awxg99vrp2l3rqfmdxdazq5xrjmg1wf62vfqsks9sff6wqx"))))
+ (build-system dune-build-system)
+ (propagated-inputs (list ocaml-bigarray-compat))
+ (native-inputs (list ocaml-alcotest 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)))
+
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar