diff options
author | Pierre Neidhardt <mail@ambrevar.xyz> | 2021-07-10 12:38:57 +0200 |
---|---|---|
committer | Pierre Neidhardt <mail@ambrevar.xyz> | 2021-07-10 17:07:17 +0200 |
commit | e1b53728ccc5a01c70b302cfdd1926eff514beda (patch) | |
tree | 61d4a33b928ec6f51c1cc2bb095e4eaabf09e7c5 /gnu/packages/lisp-xyz.scm | |
parent | c21ccbf14e211bf3417c04f5add733a1e49b44fa (diff) |
gnu: Add cl-form-types.
* gnu/packages/lisp-xyz.scm (cl-form-types, ecl-cl-form-types,
sbcl-cl-form-types): New variables.
Diffstat (limited to 'gnu/packages/lisp-xyz.scm')
-rw-r--r-- | gnu/packages/lisp-xyz.scm | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index adb4cca0f5..42057ce372 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -13302,6 +13302,49 @@ and comparison operations when used heavily in numeric code.") (define-public ecl-static-dispatch (sbcl-package->ecl-package sbcl-static-dispatch)) +(define-public sbcl-cl-form-types + (package + (name "sbcl-cl-form-types") + (version "0.3.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/alex-gutev/cl-form-types") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "17kdjqmm2ib347b8lqm3k4kca2j53kr0azb6h7m0v5i157ibndsw")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("agutil" ,sbcl-agutil) + ("anaphora" ,sbcl-anaphora) + ("arrows" ,sbcl-arrows) + ("cl-environments" ,sbcl-cl-environments) + ("introspect-environment" ,sbcl-introspect-environment) + ("optima" ,sbcl-optima))) + (native-inputs + `(("fiveam" ,sbcl-fiveam))) + (home-page "https://github.com/alex-gutev/cl-form-types") + (synopsis "determining the types of Common Lisp forms") + (description "This library provides functions for determining the value +types of Common Lisp forms, based on type information contained in the +environment. + +In order for this library to work the values types of variables and return +types of functions have to be declared. + +Macros and symbol-macros are fully expanded and all special forms, except +@code{CATCH}, are supported.") + (license license:expat))) + +(define-public cl-form-types + (sbcl-package->cl-source-package sbcl-cl-form-types)) + +(define-public ecl-cl-form-types + (sbcl-package->ecl-package sbcl-cl-form-types)) + (define-public sbcl-generic-cl ;; Latest commit includes a necessary fix for our Guix build. (let ((commit "8e5a81487ee3c13fe5ffdc8bdda161d476639535")) |