summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2020-03-09 10:55:46 +0100
committerPierre Neidhardt <mail@ambrevar.xyz>2020-03-09 10:55:46 +0100
commit6dfc981a988f0fb439eafa80357f474036f3bc90 (patch)
tree282de9f57829c870e60e2687a26d4c4cfcb1c2a5
parent698a34482af6833c334aca8b5f4d1f82f7564ffa (diff)
downloadpatches-6dfc981a988f0fb439eafa80357f474036f3bc90.tar
patches-6dfc981a988f0fb439eafa80357f474036f3bc90.tar.gz
gnu: Add sycamore.
* gnu/packages/lisp-xyz.scm (cl-sycamore, sbcl-sycamore): New variables.
-rw-r--r--gnu/packages/lisp-xyz.scm39
1 files changed, 39 insertions, 0 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index cdc1419e41..078f88a70f 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -11211,3 +11211,42 @@ interfaces as well as a functional and an object oriented interface.")
"-o" shared-lib)
#t)))))))
(synopsis "MySQL driver for Common Lisp SQL interface library")))
+
+(define-public sbcl-sycamore
+ (let ((commit "fd2820fec165ad514493426dea209728f64e6d18"))
+ (package
+ (name "sbcl-sycamore")
+ (version "0.0.20120604")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ndantam/sycamore/")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "00bv1aj89q5vldmq92zp2364jq312zjq2mbd3iyz1s2b4widzhl7"))))
+ (build-system asdf-build-system/sbcl)
+ (arguments
+ `(#:asd-file "src/sycamore.asd"))
+ (inputs
+ `(("alexandria" ,sbcl-alexandria)
+ ("cl-ppcre" ,sbcl-cl-ppcre)))
+ (synopsis "Purely functional data structure library in Common Lisp")
+ (description
+ "Sycamore is a fast, purely functional data structure library in Common Lisp.
+If features:
+
+@itemize
+@item Fast, purely functional weight-balanced binary trees.
+@item Leaf nodes are simple-vectors, greatly reducing tree height.
+@item Interfaces for tree Sets and Maps (dictionaries).
+@item Ropes.
+@item Purely functional pairing heaps.
+@item Purely functional amortized queue.
+@end itemize\n")
+ (home-page "http://ndantam.github.io/sycamore/")
+ (license license:bsd-3))))
+
+(define-public cl-sycamore
+ (sbcl-package->cl-source-package sbcl-sycamore))