summaryrefslogtreecommitdiff
path: root/dev-haskell/lens-simple
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-haskell/lens-simple
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-haskell/lens-simple')
-rw-r--r--dev-haskell/lens-simple/Manifest3
-rw-r--r--dev-haskell/lens-simple/lens-simple-0.1.0.9.ebuild29
-rw-r--r--dev-haskell/lens-simple/metadata.xml76
3 files changed, 108 insertions, 0 deletions
diff --git a/dev-haskell/lens-simple/Manifest b/dev-haskell/lens-simple/Manifest
new file mode 100644
index 000000000000..2ed4d353f406
--- /dev/null
+++ b/dev-haskell/lens-simple/Manifest
@@ -0,0 +1,3 @@
+DIST lens-simple-0.1.0.9.tar.gz 4541 BLAKE2B d3967769ff693b5e1fd370a96753753e2bac502fce326e6266627f28c5ddfc3e29ec0d646c1dcda2ceeaf7ea88f6acd5fb031aaf976c42338a1e9c3190f578f6 SHA512 3bf1079f4525b534bca70f83073ebb8abbc84cd9320ef97a1fb137914fcb614f8d7c8ea7065a4484539dc6240ab1aa393ee22ed3b9e20bc421d25ce7adadbd0c
+EBUILD lens-simple-0.1.0.9.ebuild 942 BLAKE2B 13ae29426384f4569fd7fe04547a2658b59e7ec46c301ed302f0dd570b4dea854be97b89c87efad1bf0f2d69104a059c39f7435da20d61a1fd3d6532057e87c2 SHA512 69d123bfeb2e0a3115f05e445bb1af5ac1343760530414767cbb4a7ef979c471b303341471886b78822e6c5b3d3bb62083b0b6bb42b679bb5aa7e64fe1138331
+MISC metadata.xml 3832 BLAKE2B d7aacb03e4104637103d5fecc44027b51ad2dd1caef58e47f77e343c3e307df50363a61124408c9f64adcf2a7d0e8abdd99efbc5e92dfb489ff18f96a0e81b42 SHA512 fb425a74d1f97a963d35f9c34a522a9cd559ee960bcce274da4ffecfacf2d6c424bf9844eb4e662c3e888f1035ec954b6dc2d67df8f78d86705f9b2049b1301c
diff --git a/dev-haskell/lens-simple/lens-simple-0.1.0.9.ebuild b/dev-haskell/lens-simple/lens-simple-0.1.0.9.ebuild
new file mode 100644
index 000000000000..02c9fece6e3a
--- /dev/null
+++ b/dev-haskell/lens-simple/lens-simple-0.1.0.9.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+# ebuild generated by hackport 0.5.9999
+
+CABAL_FEATURES="lib profile haddock hoogle hscolour"
+inherit haskell-cabal
+
+DESCRIPTION="simplified import of elementary lens-family combinators"
+HOMEPAGE="https://github.com/michaelt/lens-simple"
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=">=dev-haskell/lens-family-1.2:=[profile?] <dev-haskell/lens-family-1.3:=[profile?]
+ >=dev-haskell/lens-family-core-1.2:=[profile?] <dev-haskell/lens-family-core-1.3:=[profile?]
+ <dev-haskell/lens-family-th-0.6:=[profile?]
+ >=dev-haskell/mtl-2.1:=[profile?] <dev-haskell/mtl-2.3:=[profile?]
+ >=dev-haskell/transformers-0.2.0:=[profile?] <dev-haskell/transformers-6:=[profile?]
+ >=dev-lang/ghc-7.4.1:=
+"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.10
+"
diff --git a/dev-haskell/lens-simple/metadata.xml b/dev-haskell/lens-simple/metadata.xml
new file mode 100644
index 000000000000..743355961e37
--- /dev/null
+++ b/dev-haskell/lens-simple/metadata.xml
@@ -0,0 +1,76 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>haskell@gentoo.org</email>
+ <name>Gentoo Haskell</name>
+ </maintainer>
+ <longdescription>
+ This module, &lt;http://hackage.haskell.org/package/lens-simple/docs/Lens-Simple.html Lens.Simple&gt;,
+ just re-exports the main modules from Russell O\'Connor's
+ &lt;http://hackage.haskell.org/package/lens-family lens-family&gt; package, the
+ original van Laarhoven-O'Connor lens library.
+ @lens-family@ is particularly remarkable for its minute number of dependencies:
+ (apart from &lt;http://hackage.haskell.org/package/mtl mtl&gt;
+ they are all ghc \'boot\' libraries); but more importantly for its
+ extreme conceptual simplicity and theoretical soundness. Much of
+ the material it contains is well-explained, from a tutorial point of view, by
+ &lt;http://hackage.haskell.org/package/lens-tutorial lens-tutorial&gt; It is independent,
+ self-standing and readily intelligible apart from any darker
+ more general system of combinators that might attempt to extend it. Much
+ of it ought to be in the Prelude.
+
+ Convenient import of the elementary combinators from @lens-family@,
+ however, a little complicated. The idea of this trivial module, then, is just to make a sort of
+ low-powered, minimal-dependency, @lens-family@ equivalent of
+ the 800 lb gorilla of lens library imports:
+
+ &gt; import Control.Lens
+
+ namely, the light-weight and elegant:
+
+ &gt; import Lens.Simple
+
+ Check it out, it's even one character shorter!
+
+ The material in &lt;http://hackage.haskell.org/package/lens-tutorial lens-tutorial&gt;
+ will work fine if you make this substitution in the underlying
+ &lt;http://hackage.haskell.org/package/lens-tutorial-1.0.0/docs/src/Control-Lens-Tutorial.html source&gt;
+ and follow along as prompted.
+
+ As another illustration of the simplicity of the
+ fundamental van Laarhoven-O'Connor lens combinators - and their homogeneity with
+ @Control.Lens@ - note that the gloss
+ &lt;https://github.com/michaelt/lens-family-simple/blob/master/examples/Pong.hs pong example&gt;
+ from the @lens@ library examples directory - which continues to be
+ among the best introductory lens tutorials precisely by saying nothing -
+ requires only this abbreviating change of imports.
+
+ If you make that program more complicated,
+ you might of course end up needing
+ the more sophisticated material in @Control.Lens@ and
+ its immense mass of dependencies. On the other hand,
+ you might just need some of the additional material
+ present in the similarly demystifying
+ &lt;http://hackage.haskell.org/package/microlens microlens&gt;
+ or &lt;http://hackage.haskell.org/package/microlens-th microlens-th&gt; and
+ the associated modules.
+
+ This module was originally intended to simplify the use of packages that
+ follow the original promise of the van Laarhoven-O'Connor lenses.
+ /Correct practice is to export lenses without depending on a lens-library, where possible./
+ In basic cases these just use familiar @Prelude@ types, after all.
+ Examples of best practices in this respect are e.g. &lt;http://hackage.haskell.org/package/lens-family-th lens-family-th&gt; which
+ doesn't depend on @lens-family@ despite its name and pipes-related packages like
+ &lt;http://hackage.haskell.org/package/pipes-bytestring pipes-bytestring&gt;
+ and &lt;http://hackage.haskell.org/package/pipes-group pipes-group&gt;.
+
+ @Lens.Simple@ also re-exports @makeLenses@ and
+ other convenient TH incantations from Dan Burton's associated
+ &lt;http://hackage.haskell.org/package/lens-family-th lens-family-th&gt;.
+
+ </longdescription>
+ <upstream>
+ <remote-id type="github">michaelt/lens-simple</remote-id>
+ </upstream>
+</pkgmetadata>