summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-haskell/reflection/metadata.xml')
-rw-r--r--dev-haskell/reflection/metadata.xml53
1 files changed, 53 insertions, 0 deletions
diff --git a/dev-haskell/reflection/metadata.xml b/dev-haskell/reflection/metadata.xml
new file mode 100644
index 000000000000..6f8facf83344
--- /dev/null
+++ b/dev-haskell/reflection/metadata.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>haskell</herd>
+ <longdescription>
+ This package provides an implementation of the ideas presented in the paper
+ \"Functional Pearl: Implicit Configurations\" by Oleg Kiselyov and
+ Chung-chieh Shan. However, the API has been streamlined to improve performance.
+
+ The original paper can be obtained from
+ &lt;http://www.cs.rutgers.edu/~ccshan/prepose/prepose.pdf&gt;.
+
+ /Changes in 1.1.6/:
+
+ * Relaxed an unnecessary strictness annotation in the fast implementation
+
+ /Changes in 1.1.5/:
+
+ * Both implementations now work on Hugs; the fast implementation ascends
+ from the ranks of completely unportable black magic to being merely
+ /mostly/ unportable black magic.
+
+ /Changes from 0.5 to 1.1/:
+
+ * Much faster implementation available that is about 50 /times/ faster than
+ 0.9 and which runs purely on black magic. This version is now used by
+ default. To turn it off install with the @slow@ flag. If you encounter a
+ problem with the implementation, please contact the author.
+
+ * Removed @ReifiedNum@, @reflectNum@, and @reifyIntegral@; @reify@ and
+ @reflect@ are about 3 orders of magnitude faster than the special case
+ combinators were.
+
+ /Changes in 0.5/:
+
+ * Generalized the type signatures in reflect to allow you to pass any type
+ with kind @* -&gt; *@ wrapped around the desired type as the phantom type
+ argument rather than just a @Proxy@.
+
+ /Changes in 0.4/:
+
+ * Converted from `Data.Tagged` to using `Data.Proxy` for reflection. This
+ reduces the need for helper functions and scoped type variables in user
+ code.
+ </longdescription>
+ <use>
+ <flag name="template-haskell">Enable template haskell.</flag>
+ <flag name="th">Enable template haskell.</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">ekmett/reflection</remote-id>
+ </upstream>
+</pkgmetadata>