guix_mirror_bot pushed a commit to branch ocaml-team
in repository guix.

commit f4c79fb4793caec8215d2f4c4e870ac554a1951a
Author: Jason Conroy <[email protected]>
AuthorDate: Thu Jan 15 10:13:17 2026 -0500

    gnu: ocaml5: Add ocaml-camlp-streams.
    
    * gnu/packages/ocaml5.scm (ocaml-camlp-streams): New variable.
    
    Change-Id: I261bd02e1c39ebbae38ec0e042e6447363442985
    Signed-off-by: Julien Lepiller <[email protected]>
---
 gnu/packages/ocaml5.scm | 40 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/ocaml5.scm b/gnu/packages/ocaml5.scm
index 84959f4670..7b037c4901 100644
--- a/gnu/packages/ocaml5.scm
+++ b/gnu/packages/ocaml5.scm
@@ -667,6 +667,46 @@ to JUnit and other XUnit testing frameworks.")
 other XUnit testing frameworks.")
     (license license:expat)))
 
+(define-public ocaml-camlp-streams
+  (package
+    (name "ocaml5-camlp-streams")
+    (version "5.0.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/ocaml/camlp-streams";)
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0r3wvffkzyyk4als78akirxanzbib5hvc3kvwxpk36mlmc38aywh"))))
+    (build-system dune-build-system)
+    (home-page "https://github.com/ocaml/camlp-streams";)
+    (synopsis "Stream and Genlex libraries for use with Camlp4 and Camlp5")
+    (description
+     "This package provides two library modules:
+
+@itemize
+@item Stream: imperative streams, with in-place update and memoization of
+the latest element produced.
+@item Genlex: a small parameterized lexical analyzer producing streams of
+tokens from streams of characters.
+@end itemize
+
+The two modules are designed for use with Camlp4 and Camlp5: The stream
+patterns and stream expressions of Camlp4/Camlp5 consume and produce data of
+type 'a Stream.t.  The Genlex tokenizer can be used as a simple lexical
+analyzer for Camlp4/Camlp5-generated parsers.
+
+The Stream module can also be used by hand-written recursive-descent parsers,
+but is not very convenient for this purpose.
+
+The Stream and Genlex modules have been part of the OCaml standard library for 
a
+long time, and have been distributed as part of the core OCaml system.  They
+will be removed from the OCaml standard library at some future point, but will
+be maintained and distributed separately in the camlpstreams package.")
+    (license license:lgpl2.1)))
+
 (define-public ocaml-re
   (package
     (name "ocaml5-re")

Reply via email to