summary refs log tree commit diff
path: root/gnu/packages/guile-xyz.scm
diff options
context:
space:
mode:
authorJuliana Sims <jtsims@protonmail.com>2023-01-25 21:07:54 -0600
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2023-02-05 06:56:42 +0100
commitc0f40e8c86358af4bdcec646bdb4b2237bf6279a (patch)
treecf506a7984c3424d05d35de11230becb88a4236d /gnu/packages/guile-xyz.scm
parentf57e20d7289911a3691f089603c47cfdb828ea44 (diff)
downloadguix-c0f40e8c86358af4bdcec646bdb4b2237bf6279a.tar.gz
gnu: Add guile-simple-iterators.
* gnu/packages/guile-xyz.scm (guile-simple-iterators): New variable.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
Diffstat (limited to 'gnu/packages/guile-xyz.scm')
-rw-r--r--gnu/packages/guile-xyz.scm35
1 files changed, 35 insertions, 0 deletions
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 3eb8d7aeb6..b998179ee0 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -2600,6 +2600,41 @@ for Guile\".  It provides the following modules:
     ;; details.
     (license license:gpl3+)))
 
+(define-public guile-simple-iterators
+  (let ((commit "50f16a2b2aa57e657e52e19fb3c35bdc182cfa36")
+        (revision "0"))
+    (package
+      (name "guile-simple-iterators")
+      (version (git-version "0.0.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://gitlab.com/dustyweb/guile-simple-iterators")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "1m1wirlnfwmp5a4rpszd5qsbwabz4ji033w6p2714p1r524ylah8"))))
+      (build-system guile-build-system)
+      (native-inputs (list guile-3.0))
+      (home-page "https://gitlab.com/dustyweb/guile-simple-iterators")
+      (synopsis "Simple iterators for Guile")
+      (description
+       "This is a collection of iteration macros for Guile. They are inspired by
+@code{racket}'s family of iterators. Specifically, the following iterators are
+available:
+@itemize
+@item @code{for}
+@item @code{for/map}
+@item @code{for/c}
+@item @code{for/fold}
+@item @code{for/fold-right}
+@item @code{for/folder}
+@item @code{folder}
+@end itemize")
+      (license license:asl2.0))))
+
 (define-public guile2.0-lib
   (package
     (inherit guile-lib)