From patchwork Thu Mar 16 12:06:40 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Paul A. Patience" X-Patchwork-Id: 48050 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 69DB916E33; Thu, 16 Mar 2023 12:08:23 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.8 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 6A81116DC2 for ; Thu, 16 Mar 2023 12:08:22 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pcmOr-0007bj-Py; Thu, 16 Mar 2023 08:08:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pcmOq-0007bX-24 for guix-patches@gnu.org; Thu, 16 Mar 2023 08:08:04 -0400 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pcmOo-0003G0-L2 for guix-patches@gnu.org; Thu, 16 Mar 2023 08:08:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pcmOo-0005qx-42 for guix-patches@gnu.org; Thu, 16 Mar 2023 08:08:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#62221] [PATCH] gnu: Add cl-hypergeometrica. Resent-From: "Paul A. Patience" Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 16 Mar 2023 12:08:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 62221 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 62221@debbugs.gnu.org Cc: "Paul A. Patience" X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.167896843822426 (code B ref -1); Thu, 16 Mar 2023 12:08:01 +0000 Received: (at submit) by debbugs.gnu.org; 16 Mar 2023 12:07:18 +0000 Received: from localhost ([127.0.0.1]:41431 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pcmO5-0005pe-Qd for submit@debbugs.gnu.org; Thu, 16 Mar 2023 08:07:18 -0400 Received: from lists.gnu.org ([209.51.188.17]:47528) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pcmO5-0005pV-44 for submit@debbugs.gnu.org; Thu, 16 Mar 2023 08:07:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pcmNw-0004kF-R9 for guix-patches@gnu.org; Thu, 16 Mar 2023 08:07:09 -0400 Received: from mail-0301.mail-europe.com ([188.165.51.139]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pcmNt-00037E-FD for guix-patches@gnu.org; Thu, 16 Mar 2023 08:07:08 -0400 Date: Thu, 16 Mar 2023 12:06:40 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apatience.com; s=protonmail; t=1678968408; x=1679227608; bh=BLONUbZaAq9etszVDm5tqQnIOEa1PPpqbw2pER/j+OI=; h=Date:To:From:Cc:Subject:Message-ID:Feedback-ID:From:To:Cc:Date: Subject:Reply-To:Feedback-ID:Message-ID:BIMI-Selector; b=CJoftnO+vrtF4MPnS+UP3jqRwAALtf8dlbHdC4QGQKSSiFQmMexkxUo4CmcvaZWv8 d/bV1U/xmPbPGiPLUsCED3H3v13gzifKlPJqGh7nkJS95kw90Gmxx3tCY78aoiYtxu ngbTW/vu74PqgAcODYioDJ1XF+fMeZSvza7v0ZrnxYBcwzcc+lscPpfqxMmWqbJANd tMlFS5Mo8yADkBAnnwKzfct2KiET4ymZVynDbUMq77nisMv6nNe0lJveM5yOPsFff1 /TWXF8Cxv5dhgQh4QxtMZlrE4qQ92L25NVH64JnJvxWK+fYwMZIyUR0O7ERlVG7dt9 MyhDdBRNcdpPw== From: "Paul A. Patience" Message-ID: <20230316120637.166995-1-paul@apatience.com> Feedback-ID: 19227857:user:proton MIME-Version: 1.0 Received-SPF: pass client-ip=188.165.51.139; envelope-from=paul@apatience.com; helo=mail-0301.mail-europe.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/lisp-xyz.scm (sbcl-hypergeometrica, cl-hypergeometrica): New variables. --- gnu/packages/lisp-xyz.scm | 49 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) -- 2.39.2 diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index 8c87f25a84..8a92d621ee 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -22800,6 +22800,55 @@ (define-public cl-random-sample (define-public ecl-random-sample (sbcl-package->ecl-package sbcl-random-sample)) +(define-public sbcl-hypergeometrica + (let ((commit "db723ceb343d89a1c8d7f9174cf3a76fa91522b5") + (revision "0")) + (package + (name "sbcl-hypergeometrica") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/stylewarning/hypergeometrica") + (commit commit))) + (file-name (git-file-name "cl-hypergeometrica" version)) + (sha256 + (base32 "1dfd6w9djgfh7f4z79d8qsyggrwkjlqhs9rxpzpzv092nlwg3l35")))) + (build-system asdf-build-system/sbcl) + (native-inputs + (list sbcl-fiasco)) + (inputs + (list sbcl-alexandria + sbcl-cffi + sbcl-global-vars + sbcl-lparallel + sbcl-mmap + sbcl-napa-fft3 + sbcl-trivial-garbage)) + (home-page "https://github.com/stylewarning/hypergeometrica") + (synopsis "High-precision arithmetic") + (description + "Hypergeometrica is a Common Lisp library for performing high-precision +arithmetic, with a focus on performance. At the heart of it all are routines +for multiplication. Hypergeometrica aims to support: + +@itemize +@item In-core multiplication using various algorithms, from schoolbook to +floating-point FFTs. +@item In-core multiplication for large numbers using exact convolutions via +number-theoretic transforms, which is enabled by 64-bit modular arithmetic. +@item Out-of-core multiplication using derivatives of the original +Cooley–Tukey algorithm. +@end itemize + +On top of multiplication, one can build checkpointed algorithms for computing +various classical constants, like @math{\\pi}.") + (license license:bsd-3)))) + +(define-public cl-hypergeometrica + (sbcl-package->cl-source-package sbcl-hypergeometrica)) + (define-public sbcl-mgl-gpr (let ((commit "cb6ce51e2f87bf1d589f3703c13eea6e25780afe") (revision "1"))