aboutsummaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorzimoun <zimon.toutoune@gmail.com>2021-03-25 02:05:04 +0100
committerLudovic Courtès <ludo@gnu.org>2021-03-29 16:47:20 +0200
commit9eb293960a473c9cc56f66b6cae428516f9c3898 (patch)
tree941b8f2c2ccf1febdeb27a23cb3de8c8a8ec16a4 /gnu
parentf6c5a8982b40539a2908e9a7d7801147adbd30d9 (diff)
downloadguix-9eb293960a473c9cc56f66b6cae428516f9c3898.tar.gz
guix-9eb293960a473c9cc56f66b6cae428516f9c3898.zip
gnu: Add julia-chainrulestestutils.
* gnu/packages/julia-xyz.scm (julia-chainrulestestutils): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/julia-xyz.scm32
1 files changed, 32 insertions, 0 deletions
diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index ed05af6497..4e63c04c5e 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -146,6 +146,38 @@ reading and writing faster.")
sensitivities for functions without the need to depend on ChainRules itself.")
(license license:expat)))
+(define-public julia-chainrulestestutils
+ (package
+ (name "julia-chainrulestestutils")
+ (version "0.6.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/JuliaDiff/ChainRulesTestUtils.jl")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1pzs947adnb3cx1qd0cxp2fidk9szz0zsqbas90z1lhydykkvkil"))))
+ (build-system julia-build-system)
+ (propagated-inputs
+ `(("julia-chainrulescore" ,julia-chainrulescore)
+ ("julia-compat" ,julia-compat)
+ ("julia-finitedifference" ,julia-finitedifferences)))
+ (home-page "https://github.com/JuliaDiff/ChainRulesTestUtils.jl")
+ (synopsis "Common utilities used by downstream automatic differentiation tools")
+ (description "This package is designed to help in testing
+@code{ChainRulesCore.frule} and @code{ChainRulesCore.rrule} methods. The main
+entry points are @code{ChainRulesTestUtils.frule_test},
+@code{ChainRulesTestUtils.rrule_test}, and
+@code{ChainRulesTestUtils.test_scalar}. Currently this is done via testing the
+rules against numerical differentiation (using @code{FiniteDifferences.jl}).
+
+@code{ChainRulesTestUtils.jl} is separated from @code{ChainRulesCore.jl} so that it
+can be a test-only dependency, allowing it to have potentially heavy
+dependencies, while keeping @code{ChainRulesCore.jl} as light-weight as possible.")
+ (license license:expat)))
+
(define-public julia-colors
(package
(name "julia-colors")