summaryrefslogtreecommitdiff
path: root/p/haskell-psqueues/debian/control
blob: 9b6c906780911d37e80132c95fe9df3aa11dba23 (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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
Source: haskell-psqueues
Maintainer: Debian Haskell Group <pkg-haskell-maintainers@lists.alioth.debian.org>
Uploaders:
 Joachim Breitner <nomeata@debian.org>,
Priority: extra
Section: haskell
Build-Depends:
 cdbs,
 debhelper (>= 9),
 ghc (>= 8),
 ghc-prof,
 haskell-devscripts (>= 0.13),
 libghc-hashable-dev (<< 1.3),
 libghc-hashable-dev (>= 1.2.1),
 libghc-hashable-prof,
Build-Depends-Indep:
 ghc-doc,
 libghc-hashable-doc,
Standards-Version: 3.9.8
Homepage: http://hackage.haskell.org/package/psqueues
Vcs-Browser: https://anonscm.debian.org/cgit/pkg-haskell/DHG_packages.git/tree/p/haskell-psqueues
Vcs-Git: https://anonscm.debian.org/git/pkg-haskell/DHG_packages.git
X-Description: Pure priority search queues
 This package provides Priority Search Queues in three different flavors.
 .
 * OrdPSQ k p v, which uses the Ord k instance to provide fast insertion,
 deletion and lookup. This implementation is based on Ralf Hinze's "A Simple
 Implementation Technique for Priority Search Queues".  Hence, it is similar to
 the PSQueue library, although it is considerably faster and provides a
 slightly different API.
 .
 * IntPSQ p v is a far more efficient implementation. It fixes the key type
 to Int and uses a radix tree (like IntMap) with an additional min-heap
 property.
 .
 * HashPSQ k p v is a fairly straightforward extension of IntPSQ: it
 simply uses the keys' hashes as indices in the IntPSQ. If there are any hash
 collisions, it uses an OrdPSQ to resolve those. The performance of this
 implementation is comparable to that of IntPSQ, but it is more widely
 applicable since the keys are not restricted to Int, but rather to any
 Hashable datatype.
 .
 Each of the three implementations provides the same API, so they can be used
 interchangeably.
 .
 Typical applications of Priority Search Queues include:
 .
 * Caches, and more specifically LRU Caches;
 .
 * Schedulers;
 .
 * Pathfinding algorithms, such as Dijkstra's and A*.

Package: libghc-psqueues-dev
Architecture: any
Depends:
 ${haskell:Depends},
 ${misc:Depends},
 ${shlibs:Depends},
Recommends:
 ${haskell:Recommends},
Suggests:
 ${haskell:Suggests},
Conflicts:
 ${haskell:Conflicts},
Provides:
 ${haskell:Provides},
Description: ${haskell:ShortDescription}${haskell:ShortBlurb}
 ${haskell:LongDescription}
 .
 ${haskell:Blurb}

Package: libghc-psqueues-prof
Architecture: any
Depends:
 ${haskell:Depends},
 ${misc:Depends},
Recommends:
 ${haskell:Recommends},
Suggests:
 ${haskell:Suggests},
Conflicts:
 ${haskell:Conflicts},
Provides:
 ${haskell:Provides},
Description: ${haskell:ShortDescription}${haskell:ShortBlurb}
 ${haskell:LongDescription}
 .
 ${haskell:Blurb}

Package: libghc-psqueues-doc
Architecture: all
Section: doc
Depends:
 ${haskell:Depends},
 ${misc:Depends},
Recommends:
 ${haskell:Recommends},
Suggests:
 ${haskell:Suggests},
Conflicts:
 ${haskell:Conflicts},
Description: ${haskell:ShortDescription}${haskell:ShortBlurb}
 ${haskell:LongDescription}
 .
 ${haskell:Blurb}