aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/lisp-xyz.scm
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2022-06-30 16:59:12 +0200
committerPierre Neidhardt <mail@ambrevar.xyz>2022-06-30 20:01:36 +0200
commita034032066fcae595d8d0b1880e0a4107713e9e6 (patch)
tree7d26e0e88795e290c9965fcab401f30f67fb1627 /gnu/packages/lisp-xyz.scm
parent0b23663c528196e07b742041dd1912a692995d67 (diff)
downloadguix-a034032066fcae595d8d0b1880e0a4107713e9e6.tar
guix-a034032066fcae595d8d0b1880e0a4107713e9e6.tar.gz
gnu: Add defstar.
* gnu/packages/lisp-xyz.scm (cl-defstar, ecl-defstar, sbcl-defstar): New variables.
Diffstat (limited to 'gnu/packages/lisp-xyz.scm')
-rw-r--r--gnu/packages/lisp-xyz.scm32
1 files changed, 32 insertions, 0 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 8f98627a5a..f03b415529 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -21793,3 +21793,35 @@ introduces and explains filtered functions in detail.")
(define-public ecl-filtered-functions
(sbcl-package->ecl-package sbcl-filtered-functions))
+
+(define-public sbcl-defstar
+ (let ((commit "132829dac9f84fa7202a0c5793aa6accb8d2662a"))
+ (package
+ (name "sbcl-defstar")
+ (version (git-version "1.0.0" "1" commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "http://bitbucket.org/eeeickythump/defstar/")
+ (commit commit)))
+ (file-name (git-file-name "cl-defstar" version))
+ (sha256
+ (base32 "0n6m3aqvdfnsrhlhqjcy72d1i55lbkjg13ij5c7vw003p1n78wxi"))))
+ (build-system asdf-build-system/sbcl)
+ (home-page "http://bitbucket.org/eeeickythump/defstar/")
+ (synopsis "Easy inline (return) type declarations for functions")
+ (description
+ "Defstar is a collection of Common Lisp macros that can be used in
+place of @code{defun}, @code{defmethod}, @code{defgeneric}, @code{defvar},
+@code{defparameter}, @code{flet}, @code{labels}, @code{let*} and
+@code{lambda}. Each macro has the same name as the form it replaces, with a
+star added at the end, e.g. @code{defun}. (the exception is the @code{let*}
+replacement, which is called @code{*let}).")
+ (license license:gpl3))))
+
+(define-public cl-defstar
+ (sbcl-package->cl-source-package sbcl-defstar))
+
+(define-public ecl-defstar
+ (sbcl-package->ecl-package sbcl-defstar))