[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
13/29: gnu: Add compiler-macro-notes.
From: |
guix-commits |
Subject: |
13/29: gnu: Add compiler-macro-notes. |
Date: |
Thu, 30 Jun 2022 14:02:15 -0400 (EDT) |
ambrevar pushed a commit to branch master
in repository guix.
commit 2e08e8a648e0fe5a6cc6a292582db0eba276b90d
Author: Pierre Neidhardt <mail@ambrevar.xyz>
AuthorDate: Thu Jun 30 17:25:46 2022 +0200
gnu: Add compiler-macro-notes.
* gnu/packages/lisp-xyz.scm (cl-compiler-macro-notes,
ecl-compiler-macro-notes, sbcl-compiler-macro-notes): New variables.
---
gnu/packages/lisp-xyz.scm | 41 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index b8f1df3b00..1516fd417e 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -21925,3 +21925,44 @@ perform a variety of optimizations.")
(define-public ecl-fast-generic-functions
(sbcl-package->ecl-package sbcl-fast-generic-functions))
+
+(define-public sbcl-compiler-macro-notes
+ (package
+ (name "sbcl-compiler-macro-notes")
+ (version "0.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/digikar99/compiler-macro-notes")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name "cl-compiler-macro-notes" version))
+ (sha256
+ (base32 "1jv8snj2wvim3k9qhl1vsx82n56nzdmwa3ms9c4ml2d58fwpfjzs"))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-alexandria
+ sbcl-cl-environments))
+ (home-page "https://github.com/digikar99/compiler-macro-notes")
+ (synopsis "Macros and conditions for use within macros and
compiler-macros")
+ (description
+ "Alternative to the @code{compiler-macro} library:
+
+@itemize
+@item Here, we do not treat compiler notes as warnings, but instead these are
+a separate class of conditions. These are also not errors.
+@item Two main condition classes are provided: compiler-macro-notes:note and
+compiler-macro-notes:optimization-failure-note. While the latter is a subclass
+of the former, the latter notes are printed in a slightly different manner to
+the former.
+@item To be able to correctly print the expansion path that led to the
+condition, user code is expected to avoid performing a nonlocal exit to a
+place outside with-notes.
+@end itemize\n")
+ (license license:expat)))
+
+(define-public cl-compiler-macro-notes
+ (sbcl-package->cl-source-package sbcl-compiler-macro-notes))
+
+(define-public ecl-compiler-macro-notes
+ (sbcl-package->ecl-package sbcl-compiler-macro-notes))
- 12/29: gnu: Add fast-generic-functions., (continued)
- 12/29: gnu: Add fast-generic-functions., guix-commits, 2022/06/30
- 14/29: gnu: Add ctype., guix-commits, 2022/06/30
- 25/29: gnu: Add cl-trees., guix-commits, 2022/06/30
- 22/29: gnu: Add mathkit., guix-commits, 2022/06/30
- 26/29: gnu: Add cl-geometry., guix-commits, 2022/06/30
- 28/29: gnu: Add cl-sdl2-ttf., guix-commits, 2022/06/30
- 29/29: gnu: Add sketch., guix-commits, 2022/06/30
- 17/29: gnu: Add slot-extra-options., guix-commits, 2022/06/30
- 03/29: gnu: Add cl-algebraic-data-type., guix-commits, 2022/06/30
- 16/29: gnu: sbcl-parachute: Update to 20210920., guix-commits, 2022/06/30
- 13/29: gnu: Add compiler-macro-notes.,
guix-commits <=
- 11/29: gnu: Add sealable-metaobjects., guix-commits, 2022/06/30
- 15/29: gnu: Add polymorphic-functions., guix-commits, 2022/06/30
- 20/29: gnu: sbcl: Enable sb-gmp, sb-mpfr and install shared library., guix-commits, 2022/06/30
- 21/29: gnu: Add sb-cga., guix-commits, 2022/06/30
- 23/29: gnu: Add sdl2kit., guix-commits, 2022/06/30
- 27/29: gnu: Add cl-sdl2-image., guix-commits, 2022/06/30