From 2e865166eafe282f4df33921df056b2294966fb7 Mon Sep 17 00:00:00 2001 From: zamfofex Date: Wed, 14 Jun 2023 09:48:46 -0300 Subject: [PATCH] gnu: Add ghc-generic-lens. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/haskell-xyz.scm (ghc-generic-lens): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/haskell-xyz.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index f4318644aa5415e091739ee7cedc9cc0f02ac0c8..3beb2c4cdaad986e3f248c6bd5202e03cafae30e 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")