diff options
author | Paul A. Patience <paul@apatience.com> | 2022-11-25 06:58:38 +0000 |
---|---|---|
committer | Guillaume Le Vaillant <glv@posteo.net> | 2022-11-25 10:15:55 +0100 |
commit | fe09d32e34d30c92587536b581361e8c9be850f2 (patch) | |
tree | b5605d4987c603e02c73a9ffc782c3d334c319e9 | |
parent | 63374ef9b9c7ebd374bed6630783b020e45e576f (diff) | |
download | guix-fe09d32e34d30c92587536b581361e8c9be850f2.tar.gz |
gnu: Add cl-atomichron.
* gnu/packages/lisp-xyz.scm (sbcl-atomichron, cl-atomichron, ecl-atomichron): New variables. Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
-rw-r--r-- | gnu/packages/lisp-xyz.scm | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index 61de232697..190061b855 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -15376,6 +15376,40 @@ determine the cost of certain actions on a given platform and implementation.") (define-public ecl-the-cost-of-nothing (sbcl-package->ecl-package sbcl-the-cost-of-nothing)) +(define-public sbcl-atomichron + (let ((commit "5b3578bbad8c37ab559e56924d98c373efe11de5") + (revision "0")) + (package + (name "sbcl-atomichron") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/no-defun-allowed/atomichron") + (commit commit))) + (file-name (git-file-name "cl-atomichron" version)) + (sha256 + (base32 "1fmmhb3pbv7j4d1cc02zv24bpd0kd2agfjjcj46w3gmv1bb0hva1")))) + (build-system asdf-build-system/sbcl) + (inputs + (list sbcl-atomics sbcl-bordeaux-threads)) + (home-page "https://github.com/no-defun-allowed/atomichron") + (synopsis "Atomic metering library for Common Lisp") + (description + "@code{atomichron} is a Common Lisp library which implements a time +meter which tracks how many times a form is evaluated, and how long evaluation +takes. It uses atomic instructions so that meters will present correct +results in the presence of multiple threads, while trying to minimize +synchronization latency.") + (license license:bsd-2)))) + +(define-public cl-atomichron + (sbcl-package->cl-source-package sbcl-atomichron)) + +(define-public ecl-atomichron + (sbcl-package->ecl-package sbcl-atomichron)) + (define-public sbcl-glyphs (let ((commit "1ff5714e8c1dca327bc604dfe3e3d1f4b7755373")) (package |