summaryrefslogtreecommitdiff
path: root/gnu/packages/lisp.scm
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2019-10-07 13:48:23 +0200
committerPierre Neidhardt <mail@ambrevar.xyz>2019-10-07 13:48:23 +0200
commit3658db3fd73d3e04e81e5a3b03d2c395312e833a (patch)
tree72b675eb57d0b03e7ba521a5f8d293fed5c13887 /gnu/packages/lisp.scm
parent6fdb5b79478d0c6087a1b05cd092ec87f7435c72 (diff)
downloadguix-patches-3658db3fd73d3e04e81e5a3b03d2c395312e833a.tar
guix-patches-3658db3fd73d3e04e81e5a3b03d2c395312e833a.tar.gz
gnu: Add string-case.
* gnu/packages/lisp.scm (cl-string-case, ecl-string-case, sbcl-string-case): New variables.
Diffstat (limited to 'gnu/packages/lisp.scm')
-rw-r--r--gnu/packages/lisp.scm30
1 files changed, 30 insertions, 0 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 0ca815fb2e..debe568347 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -7527,3 +7527,33 @@ of C+GObject libraries without the need of writing dedicated bindings.")
(define-public cl-gobject-introspection
(sbcl-package->cl-source-package sbcl-cl-gobject-introspection))
+
+(define-public sbcl-string-case
+ (let ((commit "718c761e33749e297cd2809c7ba3ade1985c49f7")
+ (revision "0"))
+ (package
+ (name "sbcl-string-case")
+ (version (git-version "0.0.2" revision commit))
+ (home-page "https://github.com/pkhuong/string-case")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1n5i3yh0h5s636rcnwn7jwqy3rjflikra04lymimhpcshhjsk0md"))))
+ (build-system asdf-build-system/sbcl)
+ (synopsis "Efficient string= case in Common Lisp")
+ (description
+ "@code{string-case} is a Common Lisp macro that generates specialised decision
+trees to dispatch on string equality.")
+ (license license:bsd-3))))
+
+(define-public cl-string-case
+ (sbcl-package->cl-source-package sbcl-string-case))
+
+(define-public ecl-string-case
+ (sbcl-package->ecl-package sbcl-string-case))