summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzamfofex <zamfofex@twdb.moe>2023-06-14 09:48:46 -0300
committerLudovic Courtès <ludo@gnu.org>2023-07-07 15:30:22 +0200
commit2e865166eafe282f4df33921df056b2294966fb7 (patch)
treec2104c3f9e98b1bacfa9a1200b27aa0cf8330774
parent0f9953c959b5614637e0a7a5d2e2158c3f18314c (diff)
gnu: Add ghc-generic-lens.
* gnu/packages/haskell-xyz.scm (ghc-generic-lens): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--gnu/packages/haskell-xyz.scm24
1 files changed, 24 insertions, 0 deletions
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index f4318644aa..3beb2c4cda 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -6386,6 +6386,30 @@ is the shared internal logic of the @code{generic-lens} and
@code{generic-optics} libraries.")
(license license:bsd-3)))
+(define-public ghc-generic-lens
+ (package
+ (name "ghc-generic-lens")
+ (version "2.2.2.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "generic-lens" version))
+ (sha256
+ (base32
+ "0s4b51s11ssmndmx9m9zbwgv9rb27ajwihsrk10hn582rp4ck3c6"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "generic-lens")))
+ (inputs (list ghc-generic-lens-core ghc-profunctors))
+ (native-inputs (list ghc-lens ghc-inspection-testing ghc-hunit ghc-doctest))
+ (home-page "https://github.com/kcsongor/generic-lens")
+ (synopsis "Generically derive traversals, lenses and prisms.")
+ (description
+ "This library uses @code{GHC.Generics} to derive efficient
+optics (traversals, lenses and prisms) for algebraic data types in a
+type-directed way, with a focus on good type inference and error messages when
+possible. The library exposes a van Laarhoven interface. For an alternative
+interface, supporting an opaque optic type, see @code{generic-optics}.")
+ (license license:bsd-3)))
+
(define-public ghc-libffi
(package
(name "ghc-libffi")