summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-08-26 14:52:31 +0200
committerLudovic Courtès <ludo@gnu.org>2018-08-27 01:13:23 +0200
commit69502b5eb43aa6316ddf1ad2ee9a373346d0b765 (patch)
treeccab5c45ed0c057ce8f55258ac41b9b478354ee2
parent6948fa087522928b277288aa84e1b3270ca7474b (diff)
downloadguix-69502b5eb43aa6316ddf1ad2ee9a373346d0b765.tar.gz
gnu: Add guile-aa-tree.
* gnu/packages/guile.scm (guile-aa-tree): New variable.
-rw-r--r--gnu/packages/guile.scm24
1 files changed, 24 insertions, 0 deletions
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index f2a252b8d3..a585dd6dc8 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -2013,6 +2013,30 @@ Vicare Scheme and IronScheme.  Right now it contains:
 @end itemize\n")
     (license license:bsd-3)))
 
+(define-public guile-aa-tree
+  (package
+    (name "guile-aa-tree")
+    (version "3.1.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://savannah/guile-aa-tree/guile-aa-tree-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "0044c105r3q9vpl17pv3phl1b79kjm1llhkakqgiasixyav01blh"))))
+    (build-system guile-build-system)
+    (native-inputs `(("guile" ,guile-2.2)))
+    ;; https://savannah.nongnu.org/projects/guile-aa-tree
+    (home-page "https://qlfiles.net/guile-aa-tree/")
+    (synopsis "AA tree data structure for Guile")
+    (description
+     "This package provides an implementation of @dfn{AA trees}, a
+self-balancing binary tree data structure, for Guile.  It ensure @math{O(log
+n)} worst case performance for core operations.  The module provides
+non-mutating insert, delete, and search operations, with support for
+convenient nested tree operations.")
+    (license license:gpl3+)))
+
 (define-public guile-simple-zmq
   (let ((commit "1f3b7c0b9b249c6fde8e8a632b252d8a1b794424")
         (revision "1"))