Subject: [PATCH 5/5] gnu: Add cl-april.

From: Jacob MacDonald <[email-masked]>
Date: Mon, 13 Dec 2021 12:42:17 -0600

From 21b5a3c79bb29a65f65c28175b5d0e920b2f4ad6 Mon Sep 17 00:00:00 2001
From: Jacob MacDonald <[email-masked]>
Date: Wed, 8 Dec 2021 21:30:22 -0600
Subject: [PATCH 5/5] gnu: Add cl-april.

* gnu/packages/lisp-xyz.scm (sbcl-april, cl-april, ecl-april): New variables.
---
 gnu/packages/lisp-xyz.scm | 52 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)

diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 24aae8003c..84eeb05460 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -20389,3 +20389,55 @@ (define-public cl-simple-date-time
 
 (define-public ecl-simple-date-time
   (sbcl-package->ecl-package sbcl-simple-date-time))
+
+(define-public sbcl-april
+  (let ((commit "963e2d8e5575a7d430c1fba7adedd15cb23c4ce8")
+        (revision "1"))
+    (package
+      (name "sbcl-april")
+      (version (git-version "0.9.3" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/phantomics/april")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "0v27fpss1ayca2r47k0zpqa9a423a86pv8s2mlgc3g5s48lgcmj3"))
+         (modules '((guix build utils)))
+         (snippet '(begin
+                     ;; Remove Apache-relicensed MaxPC.
+                     (delete-file-recursively "maxpc-apache")
+                     ;; Ensure references are to upstream MaxPC.
+                     (substitute* "vex/vex.asd"
+                       (("maxpc-apache") "maxpc"))
+                     #true))))
+      (build-system asdf-build-system/sbcl)
+      (inputs
+       `(("alexandria" ,sbcl-alexandria)
+         ("array-operations" ,sbcl-array-operations)
+         ("maxpc-apache" ,sbcl-maxpc)
+         ("cl-ppcre" ,sbcl-cl-ppcre)
+         ("symbol-munger" ,sbcl-symbol-munger)
+         ("prove" ,sbcl-prove)
+         ("parse-number" ,sbcl-parse-number)
+         ("lparallel" ,sbcl-lparallel)
+         ("random-state" ,sbcl-random-state)
+         ("decimals" ,sbcl-decimals)
+         ("simple-date-time" ,sbcl-simple-date-time)
+         ("trivia" ,sbcl-trivia)))
+      (home-page "https://github.com/phantomics/april")
+      (synopsis "Array Programming Re-Imagined in Lisp")
+      (description "April compiles a subset of the APL programming language into
+Common Lisp.  Leveraging Lisp's powerful macros and numeric processing
+faculties, it brings APL's expressive potential to bear for Lisp developers.
+Replace hundreds of lines of number-crunching code with a single line of
+APL.")
+      (license license:asl2.0))))
+
+(define-public cl-april
+  (sbcl-package->cl-source-package sbcl-april))
+
+(define-public ecl-april
+  (sbcl-package->ecl-package sbcl-april))
-- 
2.34.0