summaryrefslogtreecommitdiff
blob: d8e45a2885dd03dd442469a6fe184058d21aea99 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
	<maintainer>
		<email>haskell@gentoo.org</email>
		<name>Gentoo Haskell</name>
	</maintainer>
	<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>