summary refs log tree commit diff
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2019-07-04 19:19:49 +0200
committerPierre Neidhardt <mail@ambrevar.xyz>2019-07-04 19:25:58 +0200
commitb0c1007dec8dee9ed8d7a8eb9397dae5612d50d4 (patch)
tree086f27d88ca581fd05a0f245799413691b1ae050
parentf4a7653e44091350ece1bcbda6dfb0bef28a5786 (diff)
downloadguix-b0c1007dec8dee9ed8d7a8eb9397dae5612d50d4.tar.gz
gnu: Add sbcl-type-i.
* gnu/packages/lisp.scm (sbcl-type-i): New variable.
-rw-r--r--gnu/packages/lisp.scm32
1 files changed, 32 insertions, 0 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index de4a55bf16..aec99cc121 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -6191,3 +6191,35 @@ to users.  This is currently supported on SBCL, CCL, and CMUCL.  Other
 implementations have implementations of the functions that do as much as they
 can and/or provide reasonable defaults.")
       (license license:wtfpl2))))
+
+(define-public sbcl-type-i
+  (let ((commit "dea233f45f94064105ec09f0767de338f67dcbe2")
+        (revision "1"))
+    (package
+      (name "sbcl-type-i")
+      (build-system asdf-build-system/sbcl)
+      (version (git-version "0.1" revision commit))
+      (home-page "https://github.com/guicho271828/type-i")
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url home-page)
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "039g5pbrhh65s0bhr9314gmd2nwc2y5lp2377c5qrc2lxky89qs3"))))
+      (inputs
+       `(("alexandria" ,sbcl-alexandria)
+         ("introspect-environment" ,sbcl-introspect-environment)
+         ("trivia.trivial" ,sbcl-trivia.trivial)))
+      (native-inputs
+       `(("fiveam" ,sbcl-fiveam)))
+      (arguments
+       `(#:test-asd-file "type-i.test.asd"))
+      (synopsis "Type inference utility on unary predicates for Common Lisp")
+      (description "This library tries to provide a way to detect what kind of
+type the given predicate is trying to check.  This is different from inferring
+the return type of a function.")
+      (license license:llgpl))))