@@ -0,0 +1,4186 @@
1+{-# LANGUAGE PatternGuards, CPP #-}
2+
3+module Main ( main ) where
4+
5+{-
6+ I use the following shell script to re-build "hackage-packages.nix":
7+
8+ | #! /bin/sh
9+ |
10+ | set -eu -o pipefail
11+ |
12+ | cd ~/src/cabal2nix
13+ | make --quiet cabal2nix.cabal
14+ | cabal build -j hackage2nix
15+ | time dist/build/hackage2nix/hackage2nix >hackage-packages.nix
16+ | mv hackage-packages.nix ~/.nix-defexpr/pkgs/development/haskell-modules/hackage-packages.nix
17+ | nix-env -qaP -A haskellngPackages | tail -1
18+
19+ Make sure that "nix-env -qaP" shows the top-level Nixpkgs attributes at the
20+ top level, i.e. without any prefix like "nixos.pkgs". Otherwise, the code
21+ that resolver in Distribution/Nixpkgs/PackageMap.hs will produce bogus
22+ results.
23+-}
24+
25+-- Run: cabal build -j hackage2nix && time dist/build/hackage2nix/hackage2nix >hackage-packages.nix && mv hackage-packages.nix ~/.nix-defexpr/pkgs/development/haskell-modules/hackage-packages.nix && nix-env -qaP -A haskellngPackages | tail -1
26+
27+import Cabal2Nix.Flags ( configureCabalFlags )
28+import Cabal2Nix.Generate ( cabal2nix' )
29+import Cabal2Nix.Hackage ( readHashedHackage, Hackage )
30+import Cabal2Nix.Package
31+import Data.List
32+import Data.Function
33+import Control.Monad
34+import Control.Monad.Par.Combinator
35+import Control.Monad.Par.IO
36+import Control.Monad.Trans ( liftIO )
37+import Data.Map.Strict ( Map )
38+import qualified Data.Map.Strict as Map
39+import Data.Maybe
40+import Data.Monoid
41+import Data.Set ( Set )
42+import qualified Data.Set as Set
43+import Distribution.Compiler
44+import Distribution.Nixpkgs.Haskell
45+import Distribution.Nixpkgs.PackageMap
46+import Distribution.Nixpkgs.Util.PrettyPrinting hiding ( attr, (<>) )
47+import Distribution.Package
48+import Distribution.PackageDescription hiding ( buildDepends, extraLibs, buildTools )
49+import Distribution.PackageDescription.Configuration
50+import Distribution.System
51+import Distribution.Text
52+import Distribution.Version
53+
54+type Nixpkgs = PackageMap -- Map String (Set [String])
55+type PackageSet = Map String Version
56+type PackageMultiSet = Map String (Set Version)
57+
58+type Constraint = Dependency
59+
60+resolveConstraint :: Constraint -> Hackage -> Version
61+resolveConstraint c = fromMaybe (error ("constraint " ++ display c ++ " cannot be resolved in Hackage")) .
62+ resolveConstraint' c
63+
64+resolveConstraint' :: Constraint -> Hackage -> Maybe Version
65+resolveConstraint' (Dependency (PackageName name) vrange) hackage | Set.null vs = Nothing
66+ | otherwise = Just (Set.findMax vs)
67+ where vs = Set.filter (`withinRange` vrange) (Map.keysSet (hackage Map.! name))
68+
69+data Configuration = Configuration
70+ {
71+ -- |Target architecture. Used by 'finalizePackageDescription' to
72+ -- choose appropriate flags and dependencies.
73+ platform :: Platform
74+
75+ -- |Target compiler. Used by 'finalizePackageDescription' to choose
76+ -- appropriate flags and dependencies.
77+ , compilerId :: CompilerId
78+
79+ -- |Core packages found on Hackageg
80+ , corePackages :: [PackageIdentifier]
81+
82+ -- |Core packages not found on Hackage.
83+ , hardCorePackages :: [PackageIdentifier]
84+
85+ -- |These packages replace the latest respective version during
86+ -- dependency resolution.
87+ , defaultPackageOverrides :: [Constraint]
88+
89+ -- |These packages are added to the generated set, but the play no
90+ -- role during dependency resolution.
91+ , extraPackages :: [Constraint]
92+
93+ -- |These packages have not succeeded a build yet, so we give them an
94+ -- empty meta.hydraPlatforms attribute to avoid cluttering our Hydra
95+ -- output with lots of broken builds.
96+ , brokenPackages :: Set PackageName
97+ }
98+ deriving (Read, Show)
99+
100+main :: IO ()
101+main = do
102+ hackage <- readHashedHackage
103+ nixpkgs <- readNixpkgPackageMap
104+ let fixup = Map.delete "acme-everything" -- TODO: https://github.com/NixOS/cabal2nix/issues/164
105+ . Map.delete "type" -- TODO: https://github.com/NixOS/cabal2nix/issues/163
106+ runParIO $ generatePackageSet defaultConfiguration (fixup hackage) nixpkgs
107+
108+generatePackageSet :: Configuration -> Hackage -> Nixpkgs -> ParIO ()
109+generatePackageSet config hackage nixpkgs = do
110+ let
111+ corePackageSet :: PackageSet
112+ corePackageSet = Map.fromList [ (name, v) | PackageIdentifier (PackageName name) v <- corePackages config ++ hardCorePackages config ]
113+
114+ latestVersionSet :: PackageSet
115+ latestVersionSet = Map.map (Set.findMax . Map.keysSet) hackage
116+
117+ defaultPackageOverridesSet :: PackageSet
118+ defaultPackageOverridesSet = Map.fromList [ (name, resolveConstraint c hackage) | c@(Dependency (PackageName name) _) <- defaultPackageOverrides config ]
119+
120+ generatedDefaultPackageSet :: PackageSet
121+ generatedDefaultPackageSet = (defaultPackageOverridesSet `Map.union` latestVersionSet) `Map.difference` corePackageSet
122+
123+ latestCorePackageSet :: PackageSet
124+ latestCorePackageSet = latestVersionSet `Map.intersection` corePackageSet
125+
126+ latestOverridePackageSet :: PackageSet
127+ latestOverridePackageSet = latestVersionSet `Map.intersection` defaultPackageOverridesSet
128+
129+ extraPackageSet :: PackageMultiSet
130+ extraPackageSet = Map.unionsWith Set.union
131+ [ Map.singleton name (Set.singleton (resolveConstraint c hackage)) | c@(Dependency (PackageName name) _) <- extraPackages config ]
132+
133+ db :: PackageMultiSet
134+ db = Map.unionsWith Set.union [ Map.map Set.singleton generatedDefaultPackageSet
135+ , Map.map Set.singleton latestCorePackageSet
136+ , Map.map Set.singleton latestOverridePackageSet
137+ , extraPackageSet
138+ ]
139+
140+ knownAttributesSet :: Set String
141+ knownAttributesSet = Set.union (Map.keysSet hackage) (Map.keysSet corePackageSet)
142+
143+ resolver :: Dependency -> Bool
144+ resolver (Dependency (PackageName name) vrange)
145+ | Just v <- Map.lookup name corePackageSet = v `withinRange` vrange
146+ | Just v <- Map.lookup name generatedDefaultPackageSet = v `withinRange` vrange
147+ | otherwise = False
148+
149+ liftIO $ do putStrLn "/* hackage-packages.nix is an auto-generated file -- DO NOT EDIT! */"
150+ putStrLn ""
151+ putStrLn "{ pkgs, stdenv, callPackage }:"
152+ putStrLn ""
153+ putStrLn "self: {"
154+ putStrLn ""
155+ pkgs <- flip parMapM (Map.toAscList db) $ \(name, vs) -> do
156+ defs <- forM (Set.toAscList vs) $ \pkgversion -> do
157+ srcSpec <- liftIO $ sourceFromHackage Nothing (name ++ "-" ++ display pkgversion)
158+ let Just cabalFileHash = lookup "x-cabal-file-hash" (customFieldsPD (packageDescription descr))
159+
160+ -- TODO: Include list of broken dependencies in the generated output.
161+ descr = hackage Map.! name Map.! pkgversion
162+ (missingDeps, _, drv') = cabal2nix resolver descr
163+ drv = drv' { src = srcSpec, editedCabalFile = if revision drv == 0 then "" else cabalFileHash
164+ , metaSection = (metaSection drv') { broken = not (Set.null missing) -- Missing Haskell dependencies!
165+ , hydraPlatforms = if PackageName name `Set.member` brokenPackages config
166+ then Set.singleton "stdenv.lib.platforms.none"
167+ else hydraPlatforms (metaSection drv')
168+ }
169+ , jailbreak = not (null missingDeps) -- Dependency constraints aren't fulfilled
170+ }
171+
172+ missing :: Set String
173+ missing = Set.filter (`Set.notMember` knownAttributesSet) (buildDepends drv `Set.union` testDepends drv)
174+
175+ buildInputs :: Map Attribute (Maybe Path)
176+ buildInputs = Map.unions
177+ [ Map.fromList [ (n, Nothing) | n <- Set.toList missing ]
178+ , Map.fromList [ (n, resolveNixpkgsAttribute nixpkgs n) | n <- Set.toAscList (extraLibs drv `Set.union` pkgConfDeps drv) ]
179+ , Map.fromList [ (n, resolveNixpkgsOrHackageAttribute nixpkgs hackage n) | n <- Set.toAscList (buildTools drv) ]
180+ ]
181+
182+ systemOverrides :: Doc
183+ systemOverrides = fsep (map (uncurry formatOverride) (Map.toAscList buildInputs))
184+
185+ formatOverride :: Attribute -> Maybe Path -> Doc
186+ formatOverride n Nothing = space <> text n <> text " = null;" -- missing attribute
187+ formatOverride n (Just []) -- Haskell package:
188+ | n == name = formatOverride n Nothing -- refers to a missing system library
189+ | otherwise = empty -- found by callPackage
190+ formatOverride n (Just p) = (text " inherit" <+> parens (text (intercalate "." p)) <+> text n) <> semi
191+
192+ overrides :: Doc
193+ overrides = systemOverrides
194+
195+ attr | Just v <- Map.lookup name generatedDefaultPackageSet, v == pkgversion = name
196+ | otherwise = name ++ '_' : [ if c == '.' then '_' else c | c <- display pkgversion ]
197+
198+ return $ nest 2 $ hang (string attr <+> equals <+> text "callPackage") 2 (parens (pPrint drv)) <+> (braces overrides <> semi)
199+ return (intercalate "\n\n" (map render defs))
200+
201+ liftIO $ mapM_ (\pkg -> putStrLn pkg >> putStrLn "") pkgs
202+ liftIO $ putStrLn "}"
203+
204+resolveNixpkgsOrHackageAttribute :: Nixpkgs -> Hackage -> Attribute -> Maybe Path
205+resolveNixpkgsOrHackageAttribute nixpkgs hackage name
206+ | p@(Just _) <- resolveNixpkgsAttribute nixpkgs name = p
207+ | Just _ <- Map.lookup name hackage = Just []
208+ | otherwise = Nothing
209+
210+resolveNixpkgsAttribute :: Nixpkgs -> Attribute -> Maybe Path
211+resolveNixpkgsAttribute nixpkgs name
212+ | name `elem` ["clang","lldb","llvm"] = Just ["self","llvmPackages"]
213+ | Just paths <- Map.lookup name nixpkgs = getShortestPath (Set.toList (paths `Set.intersection` goodScopes))
214+ | otherwise = Nothing
215+ where
216+ goodScopes :: Set Path
217+ goodScopes = Set.fromList [[], ["xlibs"], ["gnome"], ["gnome3"], ["kde4"]]
218+
219+ getShortestPath :: [Path] -> Maybe Path
220+ getShortestPath [] = Nothing
221+ getShortestPath ps = Just ("pkgs" : minimumBy (on compare length) ps)
222+
223+cabal2nix :: (Dependency -> Bool) -> GenericPackageDescription -> ([Dependency], FlagAssignment, Derivation)
224+cabal2nix resolver cabal = (missingDeps, flags, drv)
225+ where
226+ drv = cabal2nix' descr
227+
228+ Right (descr, flags) = finalize (if null missingDeps then resolver else const True) cabal
229+
230+ missingDeps :: [Dependency]
231+ missingDeps = either id (const []) (finalize resolver cabal')
232+
233+ finalize :: (Dependency -> Bool) -> GenericPackageDescription -> Either [Dependency] (PackageDescription, FlagAssignment)
234+ finalize resolver' = finalizePackageDescription
235+ (configureCabalFlags (package (packageDescription cabal)))
236+ resolver'
237+ (Platform X86_64 Linux) -- shouldn't be hardcoded
238+#if MIN_VERSION_Cabal(1,22,0)
239+ (unknownCompilerInfo (CompilerId GHC (Version [7,10,1] [])) NoAbiTag)
240+#else
241+ (CompilerId GHC (Version [7,10,1] []))
242+#endif
243+ [] -- no additional constraints
244+
245+ -- A variant of the cabal file that has all test suites enabled to ensure
246+ -- that their dependencies are recognized by finalizePackageDescription.
247+ cabal' :: GenericPackageDescription
248+ cabal' = cabal { condTestSuites = flaggedTests }
249+
250+ flaggedTests :: [(String, CondTree ConfVar [Dependency] TestSuite)]
251+ flaggedTests = map (\(n, t) -> (n, mapTreeData enableTest t)) (condTestSuites cabal)
252+
253+ enableTest :: TestSuite -> TestSuite
254+ enableTest t = t { testEnabled = True }
255+
256+defaultConfiguration :: Configuration
257+defaultConfiguration = Configuration
258+ { platform = Platform X86_64 Linux
259+
260+ , compilerId = CompilerId GHC (Version [7,10,1] [])
261+
262+ , defaultPackageOverrides = map (\s -> fromMaybe (error (show s ++ " is not a valid override selector")) (simpleParse s))
263+ [ "blaze-builder < 0.4" -- the new version breaks many builds, like streaming-commons
264+ , "blaze-html < 0.8" -- new versions break pandoc
265+ , "blaze-markup < 0.7" -- new versions break pandoc
266+ , "haddock-library == 1.1.*" -- new versions break pandoc
267+ , "HStringTemplate < 0.8" -- 0.8 depends on time >= 1.5, which we cannot provide in GHC 7.8.x
268+ , "primitive < 0.6" -- newer versions break lens and others packages
269+ , "QuickCheck < 2.8" -- 2.8 breaks chell-quickcheck-0.2.4
270+ , "utf8-string < 1" -- version 1 breaks several packages right now, most notably hint
271+ , "zlib < 0.6" -- newer versions break cabal-install
272+ ]
273+
274+ , corePackages = map (\s -> fromMaybe (error (show s ++ " is not a valid core package")) (simpleParse s))
275+ [ "Cabal-1.22.2.0"
276+ , "array-0.5.1.0"
277+ , "base-4.8.0.0"
278+ , "binary-0.7.3.0"
279+ , "bytestring-0.10.6.0"
280+ , "containers-0.5.6.2"
281+ , "deepseq-1.4.1.1"
282+ , "directory-1.2.2.0"
283+ , "filepath-1.4.0.0"
284+ , "ghc-prim-0.4.0.0"
285+ , "haskeline-0.7.2.1"
286+ , "hoopl-3.10.0.2"
287+ , "hpc-0.6.0.2"
288+ , "integer-gmp-1.0.0.0"
289+ , "pretty-1.1.2.0"
290+ , "process-1.2.3.0"
291+ , "template-haskell-2.10.0.0"
292+ , "terminfo-0.4.0.1"
293+ , "time-1.5.0.1"
294+ , "transformers-0.4.2.0"
295+ , "unix-2.7.1.0"
296+ , "xhtml-3000.2.1"
297+ ]
298+
299+ , hardCorePackages = map (\s -> fromMaybe (error (show s ++ " is not a valid core package")) (simpleParse s))
300+ [ "bin-package-db-0.0.0.0"
301+ , "ghc-7.8.4"
302+ , "rts-1.0"
303+ ]
304+
305+ , extraPackages = map (\s -> fromMaybe (error (show s ++ " is not a valid extra package selector")) (simpleParse s))
306+ [ "aeson < 0.8" -- newer versions don't work with GHC 6.12.3
307+ , "annotated-wl-pprint <0.6" -- required by idris-0.9.17.1
308+ , "blaze-html < 0.7.1" -- required by idris-0.9.17.1
309+ , "blaze-markup >=0.5.2.1 && <0.6.3.0" -- required by idris-0.9.17.1
310+ , "c2hs < 0.21" -- newer versions cannot compile ncurses
311+ , "Cabal == 1.18.*" -- required for cabal-install et al on old GHC versions
312+ , "Cabal == 1.20.*" -- required for cabal-install et al on old GHC versions
313+ , "cabal-install == 1.18.*" -- required for ghc-mod on 7.8.x
314+ , "containers < 0.5" -- required to build alex with GHC 6.12.3
315+ , "control-monad-free < 0.6" -- newer versions don't compile with anything but GHC 7.8.x
316+ , "cpphs < 1.19" -- required to build Agda
317+ , "deepseq == 1.3.0.1" -- required to build Cabal with GHC 6.12.3
318+ , "descriptive < 0.1" -- required for structured-haskell-mode-1.0.8
319+ , "equivalence == 0.2.5" -- required to build Agda with GHC 7.8.x
320+ , "gloss < 1.9.3" -- new versions don't compile with GHC 7.8.x
321+ , "haddock-api < 2.16" -- required on GHC 7.8.x
322+ , "haskell-src-exts < 1.16" -- required for structured-haskell-mode-1.0.8
323+ , "lens >=4.1.1 && <4.8" -- required by idris-0.9.17.1
324+ , "mtl < 2.2" -- newer versions require transformers > 0.4.x, which we cannot provide in GHC 7.8.x
325+ , "mtl-prelude < 2" -- required for to build postgrest on mtl 2.1.x platforms
326+ , "optparse-applicative == 0.10.*" -- required for elm-make 0.1.1 and elm-package 0.4
327+ , "parallel == 3.2.0.3" -- newer versions don't work with GHC 6.12.3
328+ , "primitive == 0.5.1.*" -- required to build alex with GHC 6.12.3
329+ , "QuickCheck < 2" -- required by test-framework-quickcheck and its users
330+ , "seqid < 0.2" -- newer versions depend on transformers 0.4.x which we cannot provide in GHC 7.8.x
331+ , "seqid-streams < 0.2" -- newer versions depend on transformers 0.4.x which we cannot provide in GHC 7.8.x
332+ , "split < 0.2" -- newer versions don't work with GHC 6.12.3
333+ , "vector < 0.10.10" -- newer versions don't work with GHC 6.12.3
334+ ]
335+
336+ , brokenPackages = Set.fromList $ map PackageName
337+ [ "3d-graphics-examples"
338+ , "3dmodels"
339+ , "4Blocks"
340+ , "abcBridge"
341+ , "abstract-par-accelerate"
342+ , "abt"
343+ , "AC-BuildPlatform"
344+ , "accelerate"
345+ , "accelerate-arithmetic"
346+ , "accelerate-fftw"
347+ , "accelerate-fourier"
348+ , "accelerate-io"
349+ , "accelerate-utility"
350+ , "accentuateus"
351+ , "access-time"
352+ , "AC-EasyRaster-GTK"
353+ , "AC-HalfInteger"
354+ , "ACME"
355+ , "acme-hq9plus"
356+ , "acme-inator"
357+ , "acme-numbersystem"
358+ , "acme-schoenfinkel"
359+ , "AC-MiniTest"
360+ , "AC-Terminal"
361+ , "ActionKid"
362+ , "activehs"
363+ , "actor"
364+ , "AC-VanillaArray"
365+ , "Adaptive"
366+ , "Adaptive-Blaisorblade"
367+ , "adaptive-containers"
368+ , "adaptive-tuple"
369+ , "adblock2privoxy"
370+ , "adhoc-network"
371+ , "adict"
372+ , "adobe-swatch-exchange"
373+ , "ADPfusion"
374+ , "adp-multi"
375+ , "adp-multi-monadiccp"
376+ , "Advgame"
377+ , "AERN-Basics"
378+ , "AERN-Net"
379+ , "AERN-Real"
380+ , "AERN-Real-Double"
381+ , "AERN-Real-Interval"
382+ , "AERN-RnToRm"
383+ , "AERN-RnToRm-Plot"
384+ , "aeson-bson"
385+ , "AesonBson"
386+ , "aeson-native"
387+ , "aeson-smart"
388+ , "aeson-streams"
389+ , "afv"
390+ , "Agata"
391+ , "Agda"
392+ , "Agda-executable"
393+ , "agda-server"
394+ , "AGI"
395+ , "agum"
396+ , "AhoCorasick"
397+ , "air"
398+ , "airbrake"
399+ , "air-extra"
400+ , "air-th"
401+ , "aivika-experiment-diagrams"
402+ , "aivika-transformers"
403+ , "ajhc"
404+ , "alea"
405+ , "alex-meta"
406+ , "algebra-dag"
407+ , "algebraic"
408+ , "algebra-sql"
409+ , "Allure"
410+ , "alms"
411+ , "alpha"
412+ , "alpino-tools"
413+ , "alsa"
414+ , "alsa-gui"
415+ , "alsa-midi"
416+ , "alsa-pcm-tests"
417+ , "alsa-seq-tests"
418+ , "altfloat"
419+ , "alure"
420+ , "amazon-emailer"
421+ , "amazon-products"
422+ , "AMI"
423+ , "anansi"
424+ , "anansi-hscolour"
425+ , "anansi-pandoc"
426+ , "anatomy"
427+ , "AndroidViewHierarchyImporter"
428+ , "angel"
429+ , "Animas"
430+ , "Annotations"
431+ , "antagonist"
432+ , "antfarm"
433+ , "anticiv"
434+ , "antigate"
435+ , "antimirov"
436+ , "antisplice"
437+ , "antlrc"
438+ , "anydbm"
439+ , "aosd"
440+ , "apelsin"
441+ , "apiary-helics"
442+ , "apis"
443+ , "api-tools"
444+ , "apotiki"
445+ , "ApplePush"
446+ , "AppleScript"
447+ , "approx-rand-test"
448+ , "arbb-vm"
449+ , "arb-fft"
450+ , "archiver"
451+ , "archlinux"
452+ , "archlinux-web"
453+ , "archnews"
454+ , "arff"
455+ , "argparser"
456+ , "arguedit"
457+ , "ariadne"
458+ , "armada"
459+ , "array-forth"
460+ , "ArrayRef"
461+ , "arrowapply-utils"
462+ , "arrow-improve"
463+ , "arrowp"
464+ , "ArrowVHDL"
465+ , "arx"
466+ , "ascii85-conduit"
467+ , "asic"
468+ , "asil"
469+ , "asn1-data"
470+ , "assimp"
471+ , "astrds"
472+ , "astview"
473+ , "async-extras"
474+ , "aterm-utils"
475+ , "atlassian-connect-core"
476+ , "atlassian-connect-descriptor"
477+ , "atom"
478+ , "atom-msp430"
479+ , "atomo"
480+ , "AttoBencode"
481+ , "attoparsec-csv"
482+ , "attoparsec-iteratee"
483+ , "attoparsec-text"
484+ , "attoparsec-text-enumerator"
485+ , "Attrac"
486+ , "atuin"
487+ , "augeas"
488+ , "augur"
489+ , "aur"
490+ , "Aurochs"
491+ , "authoring"
492+ , "AutoForms"
493+ , "autoproc"
494+ , "avahi"
495+ , "avers"
496+ , "AvlTree"
497+ , "awesomium"
498+ , "awesomium-glut"
499+ , "awesomium-raw"
500+ , "AWin32Console"
501+ , "aws-cloudfront-signer"
502+ , "aws-ec2"
503+ , "aws-elastic-transcoder"
504+ , "aws-kinesis-reshard"
505+ , "aws-lambda"
506+ , "aws-route53"
507+ , "aws-sdk"
508+ , "aws-sdk-text-converter"
509+ , "aws-sdk-xml-unordered"
510+ , "aws-sign4"
511+ , "aws-sns"
512+ , "azure-service-api"
513+ , "azurify"
514+ , "b9"
515+ , "babylon"
516+ , "backdropper"
517+ , "bag"
518+ , "Baggins"
519+ , "bamboo"
520+ , "bamboo-launcher"
521+ , "bamboo-plugin-highlight"
522+ , "bamboo-plugin-photo"
523+ , "bamboo-theme-blueprint"
524+ , "bamboo-theme-mini-html5"
525+ , "bamse"
526+ , "barcodes-code128"
527+ , "barley"
528+ , "Barracuda"
529+ , "barrie"
530+ , "barrier-monad"
531+ , "baskell"
532+ , "battleships"
533+ , "bayes-stack"
534+ , "beamable"
535+ , "beautifHOL"
536+ , "bed-and-breakfast"
537+ , "Befunge93"
538+ , "bein"
539+ , "bencode"
540+ , "berkeleydb"
541+ , "BerkeleyDBXML"
542+ , "berp"
543+ , "bert"
544+ , "bff"
545+ , "bidirectionalization-combined"
546+ , "bidispec"
547+ , "billboard-parser"
548+ , "billeksah-forms"
549+ , "billeksah-main"
550+ , "billeksah-pane"
551+ , "billeksah-services"
552+ , "binary-derive"
553+ , "binary-file"
554+ , "binary-indexed-tree"
555+ , "binary-protocol-zmq"
556+ , "binary-streams"
557+ , "binary-strict"
558+ , "binding-gtk"
559+ , "bindings-apr"
560+ , "bindings-apr-util"
561+ , "bindings-bfd"
562+ , "bindings-cctools"
563+ , "bindings-codec2"
564+ , "bindings-common"
565+ , "bindings-dc1394"
566+ , "bindings-eskit"
567+ , "bindings-EsounD"
568+ , "bindings-fann"
569+ , "bindings-friso"
570+ , "bindings-gts"
571+ , "bindings-hdf5"
572+ , "bindings-K8055"
573+ , "bindings-levmar"
574+ , "bindings-libftdi"
575+ , "bindings-librrd"
576+ , "bindings-libstemmer"
577+ , "bindings-libv4l2"
578+ , "bindings-linux-videodev2"
579+ , "bindings-mpdecimal"
580+ , "bindings-nettle"
581+ , "bindings-sc3"
582+ , "bindings-sipc"
583+ , "binding-wx"
584+ , "bind-marshal"
585+ , "bio"
586+ , "Biobase"
587+ , "BiobaseBlast"
588+ , "BiobaseDotP"
589+ , "BiobaseFasta"
590+ , "BiobaseFR3D"
591+ , "BiobaseInfernal"
592+ , "BiobaseMAF"
593+ , "BiobaseTrainingData"
594+ , "BiobaseTurner"
595+ , "BiobaseTypes"
596+ , "BiobaseVienna"
597+ , "biophd"
598+ , "biosff"
599+ , "biostockholm"
600+ , "bird"
601+ , "BirdPP"
602+ , "bit-array"
603+ , "bitcoin-rpc"
604+ , "Bitly"
605+ , "bitly-cli"
606+ , "bitmap"
607+ , "bitmap-opengl"
608+ , "bitmaps"
609+ , "bits-conduit"
610+ , "bitset"
611+ , "bitspeak"
612+ , "BitSyntax"
613+ , "bittorrent"
614+ , "bkr"
615+ , "bla"
616+ , "black-jewel"
617+ , "blakesum"
618+ , "blakesum-demo"
619+ , "blas"
620+ , "blas-hs"
621+ , "blaze"
622+ , "blaze-html-contrib"
623+ , "blaze-html-hexpat"
624+ , "blazeMarker"
625+ , "blaze-textual-native"
626+ , "Blobs"
627+ , "blogination"
628+ , "BlogLiterately"
629+ , "BlogLiterately-diagrams"
630+ , "bloxorz"
631+ , "Blueprint"
632+ , "bluetile"
633+ , "blunt"
634+ , "BNFC-meta"
635+ , "board-games"
636+ , "bogre-banana"
637+ , "Bookshelf"
638+ , "boolean-normal-forms"
639+ , "bools"
640+ , "boomslang"
641+ , "borel"
642+ , "bot"
643+ , "brainfuck-monad"
644+ , "Bravo"
645+ , "breakout"
646+ , "breve"
647+ , "brians-brain"
648+ , "bsd-sysctl"
649+ , "bson-generics"
650+ , "bson-mapping"
651+ , "btree-concurrent"
652+ , "bugzilla"
653+ , "buildbox-tools"
654+ , "buildwrapper"
655+ , "bullet"
656+ , "buster"
657+ , "Buster"
658+ , "buster-gtk"
659+ , "buster-network"
660+ , "bustle"
661+ , "bytable"
662+ , "bytestring-class"
663+ , "bytestring-csv"
664+ , "bytestringparser"
665+ , "bytestring-plain"
666+ , "bytestringreadp"
667+ , "bytestring-rematch"
668+ , "bytestring-short"
669+ , "cabal2arch"
670+ , "cabal2doap"
671+ , "cabal2spec"
672+ , "cabal-constraints"
673+ , "cabal-dependency-licenses"
674+ , "cabal-dev"
675+ , "cabal-ghci"
676+ , "cabalgraph"
677+ , "cabal-graphdeps"
678+ , "Cabal-ide-backend"
679+ , "cabal-install-bundle"
680+ , "cabal-install-ghc72"
681+ , "cabal-install-ghc74"
682+ , "cabalmdvrpm"
683+ , "cabal-query"
684+ , "cabal-rpm"
685+ , "cabalrpmdeps"
686+ , "cabal-scripts"
687+ , "CabalSearch"
688+ , "cabal-setup"
689+ , "cabal-test"
690+ , "cabal-test-quickcheck"
691+ , "cabal-upload"
692+ , "cake"
693+ , "cake3"
694+ , "cakyrespa"
695+ , "cal3d"
696+ , "cal3d-examples"
697+ , "cal3d-opengl"
698+ , "calc"
699+ , "caldims"
700+ , "caledon"
701+ , "campfire"
702+ , "cantor"
703+ , "cao"
704+ , "cap"
705+ , "Capabilities"
706+ , "capri"
707+ , "carboncopy"
708+ , "carettah"
709+ , "casadi-bindings"
710+ , "casadi-bindings-control"
711+ , "casadi-bindings-core"
712+ , "casadi-bindings-internal"
713+ , "casadi-bindings-ipopt-interface"
714+ , "casadi-bindings-snopt-interface"
715+ , "Cascade"
716+ , "cascading"
717+ , "cash"
718+ , "cassandra-thrift"
719+ , "cassy"
720+ , "castle"
721+ , "casui"
722+ , "Catana"
723+ , "catch-fd"
724+ , "categorical-algebra"
725+ , "category-extras"
726+ , "CBOR"
727+ , "CCA"
728+ , "CC-delcont"
729+ , "CC-delcont-alt"
730+ , "CC-delcont-cxe"
731+ , "CC-delcont-exc"
732+ , "CC-delcont-ref"
733+ , "CC-delcont-ref-tf"
734+ , "cci"
735+ , "cctools-workqueue"
736+ , "cedict"
737+ , "ceilometer-common"
738+ , "cereal-enumerator"
739+ , "cereal-ieee754"
740+ , "cereal-plus"
741+ , "certificate"
742+ , "cf"
743+ , "cfipu"
744+ , "cflp"
745+ , "cfopu"
746+ , "cgen"
747+ , "cgi-utils"
748+ , "chalkboard"
749+ , "chalkboard-viewer"
750+ , "charade"
751+ , "Chart-diagrams"
752+ , "chatter"
753+ , "chatty"
754+ , "chatty-text"
755+ , "chatty-utils"
756+ , "checked"
757+ , "check-pvp"
758+ , "chevalier-common"
759+ , "Chitra"
760+ , "chp"
761+ , "chp-mtl"
762+ , "chp-plus"
763+ , "chp-spec"
764+ , "chp-transformers"
765+ , "ChristmasTree"
766+ , "chronograph"
767+ , "chu2"
768+ , "chuchu"
769+ , "chunks"
770+ , "church-list"
771+ , "cil"
772+ , "cinvoke"
773+ , "c-io"
774+ , "cio"
775+ , "citation-resolve"
776+ , "citeproc-hs"
777+ , "citeproc-hs-pandoc-filter"
778+ , "cjk"
779+ , "clac"
780+ , "clafer"
781+ , "claferIG"
782+ , "claferwiki"
783+ , "CLASE"
784+ , "clash"
785+ , "clash-ghc"
786+ , "clash-prelude"
787+ , "clash-prelude-quickcheck"
788+ , "clash-systemverilog"
789+ , "clash-vhdl"
790+ , "ClassLaws"
791+ , "ClassyPrelude"
792+ , "clckwrks"
793+ , "clckwrks-cli"
794+ , "clckwrks-dot-com"
795+ , "clckwrks-plugin-bugs"
796+ , "clckwrks-plugin-ircbot"
797+ , "clckwrks-plugin-media"
798+ , "clckwrks-plugin-page"
799+ , "clckwrks-theme-bootstrap"
800+ , "clckwrks-theme-clckwrks"
801+ , "clckwrks-theme-geo-bootstrap"
802+ , "Clean"
803+ , "cless"
804+ , "clevercss"
805+ , "clifford"
806+ , "clipper"
807+ , "clippings"
808+ , "clocked"
809+ , "clogparse"
810+ , "clone-all"
811+ , "cloudfront-signer"
812+ , "cloud-haskell"
813+ , "cloudyfs"
814+ , "clua"
815+ , "cluss"
816+ , "clustering"
817+ , "clustertools"
818+ , "clutterhs"
819+ , "cmaes"
820+ , "cmath"
821+ , "cmathml3"
822+ , "CMCompare"
823+ , "cmdargs-browser"
824+ , "cmdtheline"
825+ , "cmonad"
826+ , "cmu"
827+ , "cnc-spec-compiler"
828+ , "cndict"
829+ , "Coadjute"
830+ , "Codec-Image-DevIL"
831+ , "codec-libevent"
832+ , "codecov-haskell"
833+ , "codemonitor"
834+ , "codepad"
835+ , "codex"
836+ , "cognimeta-utils"
837+ , "colada"
838+ , "collada-output"
839+ , "collada-types"
840+ , "collections"
841+ , "collections-api"
842+ , "collections-base-instances"
843+ , "coltrane"
844+ , "com"
845+ , "combinat"
846+ , "combinat-diagrams"
847+ , "combinator-interactive"
848+ , "Combinatorrent"
849+ , "commodities"
850+ , "commsec"
851+ , "commsec-keyexchange"
852+ , "comonad-extras"
853+ , "comonad-random"
854+ , "compact-map"
855+ , "compact-string"
856+ , "compdata"
857+ , "compdata-automata"
858+ , "compdata-dags"
859+ , "compdata-param"
860+ , "compilation"
861+ , "complexity"
862+ , "compose-trans"
863+ , "compression"
864+ , "compstrat"
865+ , "comptrans"
866+ , "computational-algebra"
867+ , "concraft"
868+ , "concraft-hr"
869+ , "concraft-pl"
870+ , "concrete-typerep"
871+ , "concurrent-state"
872+ , "ConcurrentUtils"
873+ , "condor"
874+ , "Condor"
875+ , "condorcet"
876+ , "conductive-clock"
877+ , "conductive-hsc3"
878+ , "conduit-audio-lame"
879+ , "conduit-audio-samplerate"
880+ , "conduit-iconv"
881+ , "conduit-network-stream"
882+ , "conduit-resumablesink"
883+ , "Configger"
884+ , "configifier"
885+ , "config-select"
886+ , "conjure"
887+ , "connection-pool"
888+ , "consistent"
889+ , "const-math-ghc-plugin"
890+ , "constrained-categories"
891+ , "ConstraintKinds"
892+ , "constructive-algebra"
893+ , "consul-haskell"
894+ , "Consumer"
895+ , "context-stack"
896+ , "continue"
897+ , "continuum"
898+ , "continuum-client"
899+ , "Contract"
900+ , "control-event"
901+ , "control-monad-attempt"
902+ , "control-monad-exception-mtl"
903+ , "control-monad-failure"
904+ , "control-monad-failure-mtl"
905+ , "Control-Monad-MultiPass"
906+ , "Control-Monad-ST2"
907+ , "contstuff-monads-tf"
908+ , "contstuff-transformers"
909+ , "convertible-ascii"
910+ , "convertible-text"
911+ , "copilot"
912+ , "copilot-c99"
913+ , "copilot-cbmc"
914+ , "copilot-core"
915+ , "copilot-language"
916+ , "copilot-libraries"
917+ , "copilot-sbv"
918+ , "copr"
919+ , "COrdering"
920+ , "core"
921+ , "corebot-bliki"
922+ , "CoreErlang"
923+ , "CoreFoundation"
924+ , "core-haskell"
925+ , "Coroutine"
926+ , "coroutine-iteratee"
927+ , "CouchDB"
928+ , "couchdb-conduit"
929+ , "couchdb-enumerator"
930+ , "couch-hs"
931+ , "court"
932+ , "CPBrainfuck"
933+ , "CPL"
934+ , "cplusplus-th"
935+ , "cprng-aes-effect"
936+ , "cpsa"
937+ , "cpuperf"
938+ , "cpython"
939+ , "cqrs"
940+ , "cqrs-example"
941+ , "cqrs-postgresql"
942+ , "cqrs-sqlite3"
943+ , "cqrs-test"
944+ , "cqrs-types"
945+ , "cr"
946+ , "crack"
947+ , "Craft3e"
948+ , "craftwerk"
949+ , "craftwerk-cairo"
950+ , "craftwerk-gtk"
951+ , "crc16"
952+ , "crf-chain1"
953+ , "crf-chain1-constrained"
954+ , "crf-chain2-generic"
955+ , "crf-chain2-tiers"
956+ , "criterion-plus"
957+ , "crocodile"
958+ , "cron"
959+ , "crunghc"
960+ , "crypto-cipher-benchmarks"
961+ , "cryptol"
962+ , "crypto-random-effect"
963+ , "cryptsy-api"
964+ , "crystalfontz"
965+ , "cse-ghc-plugin"
966+ , "csound-catalog"
967+ , "csound-expression"
968+ , "csound-expression-opcodes"
969+ , "csound-expression-typed"
970+ , "csound-sampler"
971+ , "csp"
972+ , "cspmchecker"
973+ , "CSPM-cspm"
974+ , "CSPM-FiringRules"
975+ , "CSPM-Frontend"
976+ , "CSPM-Interpreter"
977+ , "CSPM-ToProlog"
978+ , "css"
979+ , "ctemplate"
980+ , "ctkl"
981+ , "ctpl"
982+ , "cudd"
983+ , "curlhs"
984+ , "curry-base"
985+ , "CurryDB"
986+ , "curry-frontend"
987+ , "cursedcsv"
988+ , "CV"
989+ , "cv-combinators"
990+ , "cypher"
991+ , "dag"
992+ , "DAG-Tournament"
993+ , "Dangerous"
994+ , "dao"
995+ , "Dao"
996+ , "dapi"
997+ , "darcs2dot"
998+ , "darcs-benchmark"
999+ , "darcs-beta"
1000+ , "darcs-buildpackage"
1001+ , "darcs-cabalized"
1002+ , "darcsden"
1003+ , "darcs-graph"
1004+ , "DarcsHelpers"
1005+ , "darcs-monitor"
1006+ , "darcs-scripts"
1007+ , "darcswatch"
1008+ , "darkplaces-demo"
1009+ , "dash-haskell"
1010+ , "data-cycle"
1011+ , "data-dispersal"
1012+ , "data-easy"
1013+ , "data-extra"
1014+ , "data-hash"
1015+ , "data-ivar"
1016+ , "data-lens-ixset"
1017+ , "datalog"
1018+ , "data-named"
1019+ , "data-nat"
1020+ , "data-object-json"
1021+ , "data-object-yaml"
1022+ , "data-quotientref"
1023+ , "data-rope"
1024+ , "Data-Rope"
1025+ , "data-store"
1026+ , "DataTreeView"
1027+ , "data-type"
1028+ , "datetime"
1029+ , "DAV"
1030+ , "dbjava"
1031+ , "dbmigrations"
1032+ , "d-bus"
1033+ , "DBus"
1034+ , "dbus-client"
1035+ , "dbus-core"
1036+ , "dclabel"
1037+ , "ddc-build"
1038+ , "ddc-core"
1039+ , "ddc-core-eval"
1040+ , "ddc-core-flow"
1041+ , "ddc-core-llvm"
1042+ , "ddc-core-salt"
1043+ , "ddc-core-simpl"
1044+ , "ddc-core-tetra"
1045+ , "ddc-driver"
1046+ , "ddci-core"
1047+ , "ddc-source-tetra"
1048+ , "ddc-tools"
1049+ , "Deadpan-DDP"
1050+ , "dead-simple-json"
1051+ , "decepticons"
1052+ , "DecisionTree"
1053+ , "decoder-conduit"
1054+ , "dedukti"
1055+ , "deeplearning-hs"
1056+ , "deepseq-bounded"
1057+ , "deepseq-th"
1058+ , "deepzoom"
1059+ , "defargs"
1060+ , "DefendTheKing"
1061+ , "definitive-base"
1062+ , "definitive-filesystem"
1063+ , "definitive-graphics"
1064+ , "definitive-parser"
1065+ , "definitive-reactive"
1066+ , "definitive-sound"
1067+ , "deka"
1068+ , "deka-tests"
1069+ , "delicious"
1070+ , "delta-h"
1071+ , "demarcate"
1072+ , "denominate"
1073+ , "dependent-sum-template"
1074+ , "depends"
1075+ , "dephd"
1076+ , "dequeue"
1077+ , "derangement"
1078+ , "derivation-trees"
1079+ , "derive-gadt"
1080+ , "derive-IG"
1081+ , "derive-topdown"
1082+ , "derive-trie"
1083+ , "derp-lib"
1084+ , "dewdrop"
1085+ , "Dflow"
1086+ , "dfsbuild"
1087+ , "dgim"
1088+ , "dgs"
1089+ , "diagrams-builder"
1090+ , "diagrams-hsqml"
1091+ , "diagrams-pgf"
1092+ , "diagrams-qrcode"
1093+ , "diagrams-rubiks-cube"
1094+ , "diversity"
1095+ , "hutton"
1096+ , "diagrams-haddock"
1097+ , "diagrams-pdf"
1098+ , "diagrams-postscript"
1099+ , "diagrams-svg"
1100+ , "diagrams-tikz"
1101+ , "dice-entropy-conduit"
1102+ , "dicom"
1103+ , "dictparser"
1104+ , "diffcabal"
1105+ , "DifferenceLogic"
1106+ , "DifferentialEvolution"
1107+ , "digamma"
1108+ , "digestive-bootstrap"
1109+ , "digestive-foundation-lucid"
1110+ , "digestive-functors"
1111+ , "digestive-functors-aeson"
1112+ , "digestive-functors-blaze"
1113+ , "digestive-functors-happstack"
1114+ , "digestive-functors-heist"
1115+ , "digestive-functors-hsp"
1116+ , "digestive-functors-lucid"
1117+ , "digestive-functors-scotty"
1118+ , "digestive-functors-snap"
1119+ , "DigitalOcean"
1120+ , "DimensionalHash"
1121+ , "dingo-core"
1122+ , "dingo-example"
1123+ , "dingo-widgets"
1124+ , "diophantine"
1125+ , "direct-binary-files"
1126+ , "directed-cubical"
1127+ , "direct-fastcgi"
1128+ , "direct-http"
1129+ , "direct-plugins"
1130+ , "DirectSound"
1131+ , "dirfiles"
1132+ , "discount"
1133+ , "disjoint-set"
1134+ , "DisTract"
1135+ , "distributed-process"
1136+ , "distributed-process-async"
1137+ , "distributed-process-azure"
1138+ , "distributed-process-client-server"
1139+ , "distributed-process-execution"
1140+ , "distributed-process-extras"
1141+ , "distributed-process-monad-control"
1142+ , "distributed-process-p2p"
1143+ , "distributed-process-platform"
1144+ , "distributed-process-registry"
1145+ , "distributed-process-simplelocalnet"
1146+ , "distributed-process-supervisor"
1147+ , "distributed-process-task"
1148+ , "distributed-process-tests"
1149+ , "distributed-process-zookeeper"
1150+ , "distributed-static"
1151+ , "distribution"
1152+ , "distribution-plot"
1153+ , "dist-upload"
1154+ , "djinn-th"
1155+ , "DMuCheck"
1156+ , "DnaProteinAlignment"
1157+ , "dnscache"
1158+ , "dnssd"
1159+ , "doccheck"
1160+ , "docidx"
1161+ , "docker"
1162+ , "doc-review"
1163+ , "DocTest"
1164+ , "doctest-discover"
1165+ , "doctest-discover-configurator"
1166+ , "doctest-prop"
1167+ , "DOM"
1168+ , "dow"
1169+ , "download"
1170+ , "download-curl"
1171+ , "download-media-content"
1172+ , "DP"
1173+ , "dph-examples"
1174+ , "dph-lifted-base"
1175+ , "dph-lifted-copy"
1176+ , "dph-lifted-vseg"
1177+ , "dph-par"
1178+ , "dph-prim-par"
1179+ , "dph-seq"
1180+ , "DPM"
1181+ , "drClickOn"
1182+ , "DrHylo"
1183+ , "DrIFT"
1184+ , "DrIFT-cabalized"
1185+ , "dropbox-sdk"
1186+ , "dropsolve"
1187+ , "DSH"
1188+ , "ds-kanren"
1189+ , "dsmc"
1190+ , "dsmc-tools"
1191+ , "dsp"
1192+ , "DSTM"
1193+ , "dstring"
1194+ , "dtab"
1195+ , "DTC"
1196+ , "dtd"
1197+ , "dtd-text"
1198+ , "dtd-types"
1199+ , "dtw"
1200+ , "duplo"
1201+ , "Dust"
1202+ , "Dust-crypto"
1203+ , "Dust-tools"
1204+ , "Dust-tools-pcap"
1205+ , "dvdread"
1206+ , "dx9base"
1207+ , "dx9d3d"
1208+ , "dx9d3dx"
1209+ , "dynamic-object"
1210+ , "dynamic-plot"
1211+ , "dynamic-state"
1212+ , "DynamicTimeWarp"
1213+ , "dynobud"
1214+ , "DysFRP-Cairo"
1215+ , "DysFRP-Craftwerk"
1216+ , "easy-api"
1217+ , "easyjson"
1218+ , "easyplot"
1219+ , "easyrender"
1220+ , "Ebnf2ps"
1221+ , "ecdsa"
1222+ , "ecu"
1223+ , "ed25519"
1224+ , "edenmodules"
1225+ , "edenskel"
1226+ , "edentv"
1227+ , "edge"
1228+ , "EdisonCore"
1229+ , "edit-distance"
1230+ , "edit-lenses"
1231+ , "editline"
1232+ , "EditTimeReport"
1233+ , "EEConfig"
1234+ , "effective-aspects"
1235+ , "effective-aspects-mzv"
1236+ , "effect-monad"
1237+ , "egison"
1238+ , "egison-quote"
1239+ , "egison-tutorial"
1240+ , "ehaskell"
1241+ , "ehs"
1242+ , "eibd-client-simple"
1243+ , "eigen"
1244+ , "eithers"
1245+ , "EitherT"
1246+ , "ekg-bosun"
1247+ , "elerea-examples"
1248+ , "elerea-sdl"
1249+ , "Elm"
1250+ , "elm-build-lib"
1251+ , "elm-compiler"
1252+ , "elm-get"
1253+ , "elm-make"
1254+ , "elm-package"
1255+ , "elm-reactor"
1256+ , "elm-repl"
1257+ , "elm-server"
1258+ , "elm-yesod"
1259+ , "email"
1260+ , "email-header"
1261+ , "email-postmark"
1262+ , "embeddock"
1263+ , "embeddock-example"
1264+ , "embroidery"
1265+ , "emgm"
1266+ , "Emping"
1267+ , "empty"
1268+ , "Encode"
1269+ , "enumfun"
1270+ , "EnumMap"
1271+ , "enummapmap"
1272+ , "enummapset"
1273+ , "env-parser"
1274+ , "epoll"
1275+ , "eprocess"
1276+ , "epubname"
1277+ , "Eq"
1278+ , "equational-reasoning"
1279+ , "erf-native"
1280+ , "erlang"
1281+ , "eros-client"
1282+ , "error-message"
1283+ , "ersatz"
1284+ , "ersatz-toysat"
1285+ , "ert"
1286+ , "esotericbot"
1287+ , "EsounD"
1288+ , "estimators"
1289+ , "estreps"
1290+ , "Etage"
1291+ , "Etage-Graph"
1292+ , "EtaMOO"
1293+ , "eternal"
1294+ , "Eternal10Seconds"
1295+ , "Etherbunny"
1296+ , "ethereum-client-haskell"
1297+ , "ethereum-merkle-patricia-db"
1298+ , "eurofxref"
1299+ , "Euterpea"
1300+ , "event-driven"
1301+ , "event-monad"
1302+ , "EventSocket"
1303+ , "every-bit-counts"
1304+ , "ewe"
1305+ , "exif"
1306+ , "exists"
1307+ , "expat-enumerator"
1308+ , "explain"
1309+ , "explicit-sharing"
1310+ , "explore"
1311+ , "exposed-containers"
1312+ , "exp-pairs"
1313+ , "extcore"
1314+ , "extemp"
1315+ , "extended-categories"
1316+ , "extensible-effects"
1317+ , "external-sort"
1318+ , "Extra"
1319+ , "ez-couch"
1320+ , "faceted"
1321+ , "factual-api"
1322+ , "FailureT"
1323+ , "fallingblocks"
1324+ , "falling-turnip"
1325+ , "fastedit"
1326+ , "fastirc"
1327+ , "fast-tags"
1328+ , "fault-tree"
1329+ , "fay"
1330+ , "fay-base"
1331+ , "fay-builder"
1332+ , "fay-dom"
1333+ , "fay-hsx"
1334+ , "fay-jquery"
1335+ , "fay-ref"
1336+ , "fay-text"
1337+ , "fay-uri"
1338+ , "fcd"
1339+ , "fckeditor"
1340+ , "FComp"
1341+ , "fdo-trash"
1342+ , "fedora-packages"
1343+ , "feed"
1344+ , "feed2lj"
1345+ , "feed2twitter"
1346+ , "feed-cli"
1347+ , "feldspar-compiler"
1348+ , "feldspar-language"
1349+ , "fences"
1350+ , "fenfire"
1351+ , "FermatsLastMargin"
1352+ , "FerryCore"
1353+ , "ffeed"
1354+ , "fficxx"
1355+ , "ffmpeg-tutorials"
1356+ , "fft"
1357+ , "fibon"
1358+ , "fields"
1359+ , "FieldTrip"
1360+ , "fieldwise"
1361+ , "FileManip"
1362+ , "FileManipCompat"
1363+ , "FileSystem"
1364+ , "filesystem-conduit"
1365+ , "filesystem-enumerator"
1366+ , "Finance-Quote-Yahoo"
1367+ , "Finance-Treasury"
1368+ , "find-conduit"
1369+ , "FiniteMap"
1370+ , "first-class-patterns"
1371+ , "firstify"
1372+ , "FirstOrderTheory"
1373+ , "fit"
1374+ , "fitsio"
1375+ , "fixed-list"
1376+ , "fixed-point"
1377+ , "fixed-point-vector"
1378+ , "fixed-point-vector-space"
1379+ , "fixed-precision"
1380+ , "fixed-storable-array"
1381+ , "fix-parser-simple"
1382+ , "fixplate"
1383+ , "fix-symbols-gitit"
1384+ , "flexiwrap"
1385+ , "flexiwrap-smallcheck"
1386+ , "flickr"
1387+ , "Flippi"
1388+ , "flite"
1389+ , "flo"
1390+ , "flow"
1391+ , "flow2dot"
1392+ , "flowdock"
1393+ , "flowdock-api"
1394+ , "flower"
1395+ , "flowsim"
1396+ , "FModExRaw"
1397+ , "FM-SBLEX"
1398+ , "foldl-incremental"
1399+ , "folds"
1400+ , "folds-common"
1401+ , "follower"
1402+ , "Folly"
1403+ , "font-opengl-basic4x6"
1404+ , "foo"
1405+ , "forbidden-fruit"
1406+ , "fordo"
1407+ , "for-free"
1408+ , "formal"
1409+ , "FormalGrammars"
1410+ , "format"
1411+ , "format-status"
1412+ , "forml"
1413+ , "formlets"
1414+ , "formlets-hsp"
1415+ , "ForSyDe"
1416+ , "forth-hll"
1417+ , "Foster"
1418+ , "fpco-api"
1419+ , "fpnla-examples"
1420+ , "FPretty"
1421+ , "frag"
1422+ , "franchise"
1423+ , "Frank"
1424+ , "free-game"
1425+ , "freekick2"
1426+ , "freenect"
1427+ , "free-operational"
1428+ , "freesect"
1429+ , "freesound"
1430+ , "free-theorems"
1431+ , "free-theorems-counterexamples"
1432+ , "free-theorems-seq"
1433+ , "free-theorems-seq-webui"
1434+ , "free-theorems-webui"
1435+ , "FreeTypeGL"
1436+ , "friday"
1437+ , "friday-devil"
1438+ , "friendly-time"
1439+ , "frp-arduino"
1440+ , "fs-events"
1441+ , "fst"
1442+ , "ftdi"
1443+ , "ftp-conduit"
1444+ , "ftshell"
1445+ , "full-sessions"
1446+ , "fullstop"
1447+ , "full-text-search"
1448+ , "function-combine"
1449+ , "functor-apply"
1450+ , "functor-infix"
1451+ , "functorm"
1452+ , "funion"
1453+ , "funsat"
1454+ , "future"
1455+ , "fuzzytime"
1456+ , "fuzzy-timings"
1457+ , "gact"
1458+ , "gameclock"
1459+ , "Ganymede"
1460+ , "gc-monitoring-wai"
1461+ , "gdiff-ig"
1462+ , "gdiff-th"
1463+ , "GeBoP"
1464+ , "geek"
1465+ , "geek-server"
1466+ , "gemstone"
1467+ , "gencheck"
1468+ , "gender"
1469+ , "general-prelude"
1470+ , "generators"
1471+ , "generic-church"
1472+ , "genericserialize"
1473+ , "generic-storable"
1474+ , "generic-xml"
1475+ , "genetics"
1476+ , "GenI"
1477+ , "geniconvert"
1478+ , "geniserver"
1479+ , "geni-util"
1480+ , "GenSmsPdu"
1481+ , "geodetics"
1482+ , "GeoIp"
1483+ , "geojson"
1484+ , "GeomPredicates-SSE"
1485+ , "getemx"
1486+ , "getflag"
1487+ , "gf"
1488+ , "ggtsTC"
1489+ , "ghc-dup"
1490+ , "ghc-events-analyze"
1491+ , "ghc-events-parallel"
1492+ , "ghc-exactprint"
1493+ , "ghci-haskeline"
1494+ , "ghci-ng"
1495+ , "ghci-pretty"
1496+ , "ghclive"
1497+ , "ghc-parmake"
1498+ , "ghc-parser"
1499+ , "ghc-pkg-autofix"
1500+ , "ghc-pkg-lib"
1501+ , "ghc-server"
1502+ , "ghc-syb"
1503+ , "GHood"
1504+ , "ght"
1505+ , "ginsu"
1506+ , "gist"
1507+ , "git-all"
1508+ , "git-checklist"
1509+ , "git-date"
1510+ , "gitdo"
1511+ , "git-gpush"
1512+ , "github"
1513+ , "github-backup"
1514+ , "github-utils"
1515+ , "gitit"
1516+ , "gitlib-cmdline"
1517+ , "gitlib-cross"
1518+ , "gitlib-libgit2"
1519+ , "gitlib-s3"
1520+ , "gitlib-utils"
1521+ , "git-monitor"
1522+ , "git-repair"
1523+ , "git-sanity"
1524+ , "gitson"
1525+ , "glade"
1526+ , "gladexml-accessor"
1527+ , "GLFW"
1528+ , "GLFW-OGL"
1529+ , "GLFW-task"
1530+ , "glider-nlp"
1531+ , "global"
1532+ , "glome-hs"
1533+ , "GlomeTrace"
1534+ , "GlomeView"
1535+ , "gloss-banana"
1536+ , "gloss-devil"
1537+ , "glpk-hs"
1538+ , "gmap"
1539+ , "gmndl"
1540+ , "gnome-desktop"
1541+ , "gnome-keyring"
1542+ , "gnomevfs"
1543+ , "g-npm"
1544+ , "gnuplot"
1545+ , "gnutls"
1546+ , "goa"
1547+ , "goatee"
1548+ , "goatee-gtk"
1549+ , "gofer-prelude"
1550+ , "google-drive"
1551+ , "google-html5-slide"
1552+ , "google-mail-filters"
1553+ , "googleplus"
1554+ , "GoogleSB"
1555+ , "google-search"
1556+ , "GoogleSuggest"
1557+ , "gopherbot"
1558+ , "gpah"
1559+ , "GPipe"
1560+ , "GPipe-Collada"
1561+ , "GPipe-Examples"
1562+ , "GPipe-TextureLoad"
1563+ , "gps"
1564+ , "gps2htmlReport"
1565+ , "GPX"
1566+ , "gpx-conduit"
1567+ , "GrammarProducts"
1568+ , "grapefruit-examples"
1569+ , "grapefruit-frp"
1570+ , "grapefruit-records"
1571+ , "grapefruit-ui"
1572+ , "grapefruit-ui-gtk"
1573+ , "Graph500"
1574+ , "graphbuilder"
1575+ , "GraphHammer"
1576+ , "GraphHammer-examples"
1577+ , "graphics-drawingcombinators"
1578+ , "graphicsFormats"
1579+ , "graphics-formats-collada"
1580+ , "graphicstools"
1581+ , "graph-rewriting"
1582+ , "graph-rewriting-cl"
1583+ , "graph-rewriting-gl"
1584+ , "graph-rewriting-lambdascope"
1585+ , "graph-rewriting-layout"
1586+ , "graph-rewriting-ski"
1587+ , "graph-rewriting-strategies"
1588+ , "graph-rewriting-trs"
1589+ , "graph-rewriting-ww"
1590+ , "graphtype"
1591+ , "graph-utils"
1592+ , "graph-wrapper"
1593+ , "greencard"
1594+ , "greencard-lib"
1595+ , "greg-client"
1596+ , "Grempa"
1597+ , "grm"
1598+ , "groundhog-inspector"
1599+ , "groundhog-th"
1600+ , "Grow"
1601+ , "GrowlNotify"
1602+ , "gruff"
1603+ , "gruff-examples"
1604+ , "gsasl"
1605+ , "gsc-weighting"
1606+ , "gsl-random"
1607+ , "gsl-random-fu"
1608+ , "gsmenu"
1609+ , "gstreamer"
1610+ , "GTALib"
1611+ , "gtfs"
1612+ , "gtk2hs-cast-glade"
1613+ , "gtk2hs-cast-gnomevfs"
1614+ , "gtk2hs-cast-gtk"
1615+ , "gtk2hs-cast-gtkglext"
1616+ , "Gtk2hsGenerics"
1617+ , "gtk2hs-rpn"
1618+ , "gtk3-mac-integration"
1619+ , "gtkglext"
1620+ , "GtkGLTV"
1621+ , "gtkimageview"
1622+ , "gtk-mac-integration"
1623+ , "gtkrsync"
1624+ , "gtk-serialized-event"
1625+ , "gtk-toy"
1626+ , "guarded-rewriting"
1627+ , "GuiHaskell"
1628+ , "GuiTV"
1629+ , "haar"
1630+ , "Hach"
1631+ , "hack2-contrib"
1632+ , "hack2-contrib-extra"
1633+ , "hack2-handler-happstack-server"
1634+ , "hack2-handler-mongrel2-http"
1635+ , "hack2-handler-snap-server"
1636+ , "hack2-handler-warp"
1637+ , "hack2-interface-wai"
1638+ , "hackage2hwn"
1639+ , "hackage2twitter"
1640+ , "hackage-mirror"
1641+ , "hackage-plot"
1642+ , "hackage-proxy"
1643+ , "hackager"
1644+ , "hackage-server"
1645+ , "hackage-sparks"
1646+ , "hack-contrib"
1647+ , "hack-contrib-press"
1648+ , "hackernews"
1649+ , "hack-frontend-happstack"
1650+ , "hack-handler-epoll"
1651+ , "hack-handler-evhttp"
1652+ , "hack-handler-fastcgi"
1653+ , "hack-handler-happstack"
1654+ , "hack-handler-hyena"
1655+ , "hack-handler-kibro"
1656+ , "hack-handler-simpleserver"
1657+ , "HackMail"
1658+ , "hack-middleware-cleanpath"
1659+ , "hack-middleware-clientsession"
1660+ , "hack-middleware-jsonp"
1661+ , "hactor"
1662+ , "haddock-leksah"
1663+ , "haddocset"
1664+ , "hadoop-tools"
1665+ , "haggis"
1666+ , "Haggressive"
1667+ , "hairy"
1668+ , "hakaru"
1669+ , "hakismet"
1670+ , "hakyll"
1671+ , "hakyll-agda"
1672+ , "hakyll-blaze-templates"
1673+ , "hakyll-contrib"
1674+ , "hakyll-contrib-hyphenation"
1675+ , "hakyll-contrib-links"
1676+ , "hakyll-convert"
1677+ , "hakyll-elm"
1678+ , "halberd"
1679+ , "HaLeX"
1680+ , "halfs"
1681+ , "halipeto"
1682+ , "halma"
1683+ , "hampp"
1684+ , "hamtmap"
1685+ , "hamusic"
1686+ , "handa-gdata"
1687+ , "handle-like"
1688+ , "HandsomeSoup"
1689+ , "hans"
1690+ , "hans-pcap"
1691+ , "hapistrano"
1692+ , "happindicator"
1693+ , "happindicator3"
1694+ , "happraise"
1695+ , "HAppS-Data"
1696+ , "HAppSHelpers"
1697+ , "happs-hsp"
1698+ , "happs-hsp-template"
1699+ , "HAppS-IxSet"
1700+ , "HAppS-Server"
1701+ , "HAppS-State"
1702+ , "happstack-auth"
1703+ , "happstack-clientsession"
1704+ , "happstack-contrib"
1705+ , "happstack-data"
1706+ , "happstack-dlg"
1707+ , "happstack-facebook"
1708+ , "happstack-fay"
1709+ , "happstack-fay-ajax"
1710+ , "happstack-foundation"
1711+ , "happstack-heist"
1712+ , "happstack-helpers"
1713+ , "happstack-hsp"
1714+ , "happstack-ixset"
1715+ , "happstack-jmacro"
1716+ , "happstack-monad-peel"
1717+ , "happstack-plugins"
1718+ , "happstack-state"
1719+ , "happstack-util"
1720+ , "happstack-yui"
1721+ , "happs-tutorial"
1722+ , "HAppS-Util"
1723+ , "happybara"
1724+ , "happybara-webkit"
1725+ , "happybara-webkit-server"
1726+ , "happy-meta"
1727+ , "harchive"
1728+ , "hark"
1729+ , "HARM"
1730+ , "HarmTrace"
1731+ , "HarmTrace-Base"
1732+ , "harp"
1733+ , "harpy"
1734+ , "has"
1735+ , "hascal"
1736+ , "hascat"
1737+ , "hascat-lib"
1738+ , "hascat-setup"
1739+ , "hascat-system"
1740+ , "Haschoo"
1741+ , "HasGP"
1742+ , "hash"
1743+ , "hashable-generics"
1744+ , "hashed-storage"
1745+ , "Hashell"
1746+ , "hasim"
1747+ , "hask"
1748+ , "haskanoid"
1749+ , "haskarrow"
1750+ , "haskdeep"
1751+ , "haskeem"
1752+ , "haskeline-class"
1753+ , "haskell2010"
1754+ , "haskell98"
1755+ , "haskell-aliyun"
1756+ , "haskell-awk"
1757+ , "haskell-bcrypt"
1758+ , "haskell-brainfuck"
1759+ , "haskell-cnc"
1760+ , "haskell-course-preludes"
1761+ , "haskelldb-connect-hdbc"
1762+ , "haskelldb-connect-hdbc-catchio-mtl"
1763+ , "haskelldb-connect-hdbc-catchio-tf"
1764+ , "haskelldb-connect-hdbc-catchio-transformers"
1765+ , "haskelldb-connect-hdbc-lifted"
1766+ , "haskelldb-dynamic"
1767+ , "haskelldb-hdbc"
1768+ , "haskelldb-hdbc-mysql"
1769+ , "haskelldb-hdbc-odbc"
1770+ , "haskelldb-hdbc-postgresql"
1771+ , "haskelldb-hdbc-sqlite3"
1772+ , "haskelldb-hsql"
1773+ , "haskelldb-hsql-mysql"
1774+ , "haskelldb-hsql-odbc"
1775+ , "haskelldb-hsql-postgresql"
1776+ , "haskelldb-hsql-sqlite3"
1777+ , "haskelldb-wx"
1778+ , "haskell-docs"
1779+ , "haskell-formatter"
1780+ , "haskell-ftp"
1781+ , "haskell-in-space"
1782+ , "haskell-names"
1783+ , "haskell-neo4j-client"
1784+ , "HaskellNN"
1785+ , "Haskelloids"
1786+ , "haskell-openflow"
1787+ , "haskell-packages"
1788+ , "haskell-pdf-presenter"
1789+ , "haskell-platform-test"
1790+ , "haskell-plot"
1791+ , "haskell-reflect"
1792+ , "haskell-rules"
1793+ , "haskellscrabble"
1794+ , "haskell-src-meta-mwotton"
1795+ , "HaskellTorrent"
1796+ , "haskell-type-exts"
1797+ , "haskell-tyrant"
1798+ , "haskell-xmpp"
1799+ , "haskelm"
1800+ , "haskgame"
1801+ , "haskheap"
1802+ , "haskhol-core"
1803+ , "hask-home"
1804+ , "haskmon"
1805+ , "haskoin"
1806+ , "haskoin-crypto"
1807+ , "haskoin-protocol"
1808+ , "haskoin-script"
1809+ , "haskoin-util"
1810+ , "haskoin-wallet"
1811+ , "haskoon"
1812+ , "haskoon-httpspec"
1813+ , "haskoon-salvia"
1814+ , "haskore"
1815+ , "haskore-realtime"
1816+ , "haskore-supercollider"
1817+ , "haskore-synthesizer"
1818+ , "haskore-vintage"
1819+ , "haslo"
1820+ , "hasloGUI"
1821+ , "hasparql-client"
1822+ , "hastache-aeson"
1823+ , "haste-compiler"
1824+ , "haste-perch"
1825+ , "has-th"
1826+ , "hat"
1827+ , "hatex-guide"
1828+ , "HaTeX-meta"
1829+ , "HaVSA"
1830+ , "hawitter"
1831+ , "Hawk"
1832+ , "haxparse"
1833+ , "hayland"
1834+ , "Hayoo"
1835+ , "hback"
1836+ , "hbayes"
1837+ , "hBDD-CUDD"
1838+ , "hbeat"
1839+ , "hblas"
1840+ , "hblock"
1841+ , "h-booru"
1842+ , "hburg"
1843+ , "HCard"
1844+ , "hcheat"
1845+ , "hchesslib"
1846+ , "HCL"
1847+ , "hcltest"
1848+ , "hcron"
1849+ , "hCsound"
1850+ , "hcube"
1851+ , "hcwiid"
1852+ , "hdaemonize-buildfix"
1853+ , "HDBC-mysql"
1854+ , "HDBC-sqlite3"
1855+ , "hdbi"
1856+ , "hdbi-conduit"
1857+ , "hdbi-postgresql"
1858+ , "hdbi-sqlite"
1859+ , "hdbi-tests"
1860+ , "hDFA"
1861+ , "hdigest"
1862+ , "hdirect"
1863+ , "hdis86"
1864+ , "hdiscount"
1865+ , "hdm"
1866+ , "hdocs"
1867+ , "hdph"
1868+ , "hdph-closure"
1869+ , "HDRUtils"
1870+ , "hecc"
1871+ , "Hedi"
1872+ , "hedn"
1873+ , "heist-aeson"
1874+ , "helics"
1875+ , "helics-wai"
1876+ , "helium"
1877+ , "hell"
1878+ , "hellage"
1879+ , "hellnet"
1880+ , "helm"
1881+ , "hemkay"
1882+ , "hemokit"
1883+ , "hen"
1884+ , "henet"
1885+ , "hepevt"
1886+ , "HERA"
1887+ , "herbalizer"
1888+ , "her-lexer"
1889+ , "her-lexer-parsec"
1890+ , "Hermes"
1891+ , "hermit"
1892+ , "hermit-syb"
1893+ , "herringbone"
1894+ , "herringbone-embed"
1895+ , "herringbone-wai"
1896+ , "hesql"
1897+ , "hetris"
1898+ , "heukarya"
1899+ , "hevolisa"
1900+ , "hevolisa-dph"
1901+ , "hexpat-iteratee"
1902+ , "hexpat-pickle-generic"
1903+ , "hexquote"
1904+ , "hF2"
1905+ , "hfann"
1906+ , "hfd"
1907+ , "hfiar"
1908+ , "hfractal"
1909+ , "hfsevents"
1910+ , "hfusion"
1911+ , "hgalib"
1912+ , "HGamer3D"
1913+ , "HGamer3D-API"
1914+ , "HGamer3D-Audio"
1915+ , "HGamer3D-CAudio-Binding"
1916+ , "HGamer3D-CEGUI-Binding"
1917+ , "HGamer3D-Enet-Binding"
1918+ , "HGamer3D-Graphics3D"
1919+ , "HGamer3D-GUI"
1920+ , "HGamer3D-InputSystem"
1921+ , "HGamer3D-Network"
1922+ , "HGamer3D-Ogre-Binding"
1923+ , "HGamer3D-OIS-Binding"
1924+ , "HGamer3D-SDL2-Binding"
1925+ , "HGamer3D-SFML-Binding"
1926+ , "HGamer3D-WinEvent"
1927+ , "HGamer3D-Wire"
1928+ , "hg-buildpackage"
1929+ , "hgen"
1930+ , "hgeometric"
1931+ , "hgithub"
1932+ , "HGL"
1933+ , "hgom"
1934+ , "h-gpgme"
1935+ , "HGraphStorage"
1936+ , "hharp"
1937+ , "HHDL"
1938+ , "hiccup"
1939+ , "hichi"
1940+ , "hieraclus"
1941+ , "hierarchical-clustering"
1942+ , "hierarchical-clustering-diagrams"
1943+ , "hiernotify"
1944+ , "Hieroglyph"
1945+ , "HiggsSet"
1946+ , "higherorder"
1947+ , "highWaterMark"
1948+ , "himg"
1949+ , "himpy"
1950+ , "hinduce-classifier"
1951+ , "hinduce-classifier-decisiontree"
1952+ , "hinduce-examples"
1953+ , "hint-server"
1954+ , "hinvaders"
1955+ , "hinze-streams"
1956+ , "hircules"
1957+ , "hirt"
1958+ , "hissmetrics"
1959+ , "Histogram"
1960+ , "historian"
1961+ , "hist-pl"
1962+ , "hist-pl-fusion"
1963+ , "hist-pl-lmf"
1964+ , "hjs"
1965+ , "HJVM"
1966+ , "hlatex"
1967+ , "hlbfgsb"
1968+ , "hlcm"
1969+ , "HLearn-algebra"
1970+ , "HLearn-datastructures"
1971+ , "hledger-chart"
1972+ , "hledger-irr"
1973+ , "hledger-vty"
1974+ , "hlibev"
1975+ , "hlibfam"
1976+ , "HListPP"
1977+ , "hlogger"
1978+ , "HLogger"
1979+ , "hly"
1980+ , "HMap"
1981+ , "hmark"
1982+ , "hmarkup"
1983+ , "hmatrix-banded"
1984+ , "hmatrix-gsl-stats"
1985+ , "hmatrix-quadprogpp"
1986+ , "hmatrix-static"
1987+ , "hmatrix-syntax"
1988+ , "hmatrix-tests"
1989+ , "hmeap-utils"
1990+ , "hmk"
1991+ , "HMM"
1992+ , "hMollom"
1993+ , "hmp3"
1994+ , "Hmpf"
1995+ , "hmpfr"
1996+ , "hmumps"
1997+ , "HNM"
1998+ , "hnn"
1999+ , "hoauth"
2000+ , "hob"
2001+ , "hobbits"
2002+ , "HODE"
2003+ , "Hoed"
2004+ , "hofix-mtl"
2005+ , "hog"
2006+ , "hogg"
2007+ , "hogre"
2008+ , "hogre-examples"
2009+ , "hois"
2010+ , "hole"
2011+ , "holey-format"
2012+ , "Holumbus-Distribution"
2013+ , "Holumbus-MapReduce"
2014+ , "Holumbus-Searchengine"
2015+ , "Holumbus-Storage"
2016+ , "holy-project"
2017+ , "homeomorphic"
2018+ , "hommage"
2019+ , "hommage-ds"
2020+ , "HongoDB"
2021+ , "hood"
2022+ , "hoodie"
2023+ , "hoodle"
2024+ , "hoodle-builder"
2025+ , "hoodle-core"
2026+ , "hoodle-extra"
2027+ , "hoodle-parser"
2028+ , "hoodle-publish"
2029+ , "hoodle-render"
2030+ , "hoodle-types"
2031+ , "hood-off"
2032+ , "hoovie"
2033+ , "hopencc"
2034+ , "hopencl"
2035+ , "hOpenPGP"
2036+ , "hopfield"
2037+ , "hoq"
2038+ , "hotswap"
2039+ , "hp2any-core"
2040+ , "hp2any-graph"
2041+ , "hp2any-manager"
2042+ , "hpage"
2043+ , "hpapi"
2044+ , "hpaste"
2045+ , "hpasteit"
2046+ , "HPath"
2047+ , "hpc-coveralls"
2048+ , "hpc-tracer"
2049+ , "hPDB-examples"
2050+ , "HPDF"
2051+ , "hplayground"
2052+ , "hplaylist"
2053+ , "HPlot"
2054+ , "hpodder"
2055+ , "HPong"
2056+ , "hprotoc"
2057+ , "hprotoc-fork"
2058+ , "hps-cairo"
2059+ , "hpygments"
2060+ , "hpylos"
2061+ , "hR"
2062+ , "hranker"
2063+ , "HRay"
2064+ , "Hricket"
2065+ , "HROOT"
2066+ , "HROOT-core"
2067+ , "HROOT-graf"
2068+ , "HROOT-hist"
2069+ , "HROOT-io"
2070+ , "HROOT-math"
2071+ , "hs2bf"
2072+ , "hs2dot"
2073+ , "Hs2lib"
2074+ , "hsbackup"
2075+ , "hsbencher-fusion"
2076+ , "hsc2hs"
2077+ , "hsc3-cairo"
2078+ , "hsc3-data"
2079+ , "hsc3-forth"
2080+ , "hsc3-graphs"
2081+ , "hsc3-lang"
2082+ , "hsc3-lisp"
2083+ , "hsc3-plot"
2084+ , "hsc3-rec"
2085+ , "hsc3-server"
2086+ , "hsc3-unsafe"
2087+ , "hscamwire"
2088+ , "hs-carbon"
2089+ , "hs-carbon-examples"
2090+ , "hscassandra"
2091+ , "hs-cdb"
2092+ , "hsclock"
2093+ , "hscrtmpl"
2094+ , "hscurses"
2095+ , "hscurses-fish-ex"
2096+ , "hsdip"
2097+ , "hsdns-cache"
2098+ , "hs-dotnet"
2099+ , "Hsed"
2100+ , "hsenv"
2101+ , "hsexif"
2102+ , "hsfacter"
2103+ , "HSFFIG"
2104+ , "hs-ffmpeg"
2105+ , "hs-fltk"
2106+ , "hs-gchart"
2107+ , "hs-gen-iface"
2108+ , "hs-GeoIP"
2109+ , "HSGEP"
2110+ , "hsgnutls"
2111+ , "hsgnutls-yj"
2112+ , "hsgsom"
2113+ , "HsHaruPDF"
2114+ , "HSHHelpers"
2115+ , "HsHyperEstraier"
2116+ , "hsignal"
2117+ , "hSimpleDB"
2118+ , "hsini"
2119+ , "hs-java"
2120+ , "hs-json-rpc"
2121+ , "HsJudy"
2122+ , "hskeleton"
2123+ , "hslackbuilder"
2124+ , "hslibsvm"
2125+ , "hslogger4j"
2126+ , "hs-logo"
2127+ , "hslogstash"
2128+ , "hsmagick"
2129+ , "HSmarty"
2130+ , "hs-mesos"
2131+ , "hsmisc"
2132+ , "Hsmtlib"
2133+ , "hsmtpclient"
2134+ , "hsndfile-storablevector"
2135+ , "hsnock"
2136+ , "hs-nombre-generator"
2137+ , "hsns"
2138+ , "hsntp"
2139+ , "hsoptions"
2140+ , "HSoundFile"
2141+ , "hsparql"
2142+ , "HsParrot"
2143+ , "hsp-cgi"
2144+ , "hspec-expectations-pretty"
2145+ , "hspec-experimental"
2146+ , "hspec-shouldbe"
2147+ , "hspec-snap"
2148+ , "HsPerl5"
2149+ , "hs-pgms"
2150+ , "hs-pkpass"
2151+ , "hspread"
2152+ , "hspresent"
2153+ , "hsprocess"
2154+ , "hsql-mysql"
2155+ , "hsqml-demo-morris"
2156+ , "hsqml-demo-samples"
2157+ , "hsqml-morris"
2158+ , "hs-scrape"
2159+ , "hsSqlite3"
2160+ , "HsSVN"
2161+ , "hstatistics"
2162+ , "hstats"
2163+ , "hstest"
2164+ , "hstidy"
2165+ , "hstorchat"
2166+ , "hstradeking"
2167+ , "HStringTemplateHelpers"
2168+ , "hs-twitter"
2169+ , "hs-twitterarchiver"
2170+ , "hstyle"
2171+ , "hstzaar"
2172+ , "hsubconvert"
2173+ , "hs-vcard"
2174+ , "HSvm"
2175+ , "hswip"
2176+ , "hsx"
2177+ , "hsXenCtrl"
2178+ , "hsx-jmacro"
2179+ , "hsx-xhtml"
2180+ , "hsyscall"
2181+ , "hszephyr"
2182+ , "HTab"
2183+ , "hTalos"
2184+ , "hTensor"
2185+ , "HTicTacToe"
2186+ , "html2hamlet"
2187+ , "html-email-validate"
2188+ , "htodo"
2189+ , "htoml"
2190+ , "htsn-import"
2191+ , "http-client-request-modifiers"
2192+ , "http-conduit-browser"
2193+ , "http-conduit-downloader"
2194+ , "http-encodings"
2195+ , "http-enumerator"
2196+ , "http-monad"
2197+ , "http-proxy"
2198+ , "https-everywhere-rules"
2199+ , "https-everywhere-rules-raw"
2200+ , "http-shed"
2201+ , "HTTP-Simple"
2202+ , "httpspec"
2203+ , "http-streams"
2204+ , "http-test"
2205+ , "htune"
2206+ , "htzaar"
2207+ , "hubris"
2208+ , "HueAPI"
2209+ , "hugs2yc"
2210+ , "hulk"
2211+ , "hums"
2212+ , "HUnit-Diff"
2213+ , "hunit-gui"
2214+ , "HUnit-Plus"
2215+ , "hunit-rematch"
2216+ , "hunt-searchengine"
2217+ , "hurdle"
2218+ , "husk-scheme"
2219+ , "husk-scheme-libs"
2220+ , "husky"
2221+ , "huzzy"
2222+ , "hVOIDP"
2223+ , "hws"
2224+ , "HXMPP"
2225+ , "hxmppc"
2226+ , "hxournal"
2227+ , "HXQ"
2228+ , "hxt-binary"
2229+ , "hxt-filter"
2230+ , "hxthelper"
2231+ , "hxweb"
2232+ , "hybrid"
2233+ , "hybrid-vectors"
2234+ , "hydra-hs"
2235+ , "hydra-print"
2236+ , "hydrogen"
2237+ , "hydrogen-cli-args"
2238+ , "hydrogen-data"
2239+ , "hydrogen-parsing"
2240+ , "hydrogen-prelude"
2241+ , "hydrogen-prelude-parsec"
2242+ , "hydrogen-util"
2243+ , "hyena"
2244+ , "hylolib"
2245+ , "hylotab"
2246+ , "hyloutils"
2247+ , "hyperdrive"
2248+ , "hyperloglog"
2249+ , "hyperpublic"
2250+ , "hypher"
2251+ , "iban"
2252+ , "iCalendar"
2253+ , "iconv"
2254+ , "ideas"
2255+ , "ideas-math"
2256+ , "ide-backend"
2257+ , "idiii"
2258+ , "idna2008"
2259+ , "idris"
2260+ , "IDynamic"
2261+ , "ieee-utils"
2262+ , "iException"
2263+ , "IFS"
2264+ , "ig"
2265+ , "ige-mac-integration"
2266+ , "igraph"
2267+ , "igrf"
2268+ , "ihaskell"
2269+ , "ihaskell-aeson"
2270+ , "ihaskell-basic"
2271+ , "ihaskell-blaze"
2272+ , "ihaskell-charts"
2273+ , "ihaskell-display"
2274+ , "ihaskell-hatex"
2275+ , "ihaskell-juicypixels"
2276+ , "ihaskell-magic"
2277+ , "ihaskell-parsec"
2278+ , "ihttp"
2279+ , "illuminate"
2280+ , "imagepaste"
2281+ , "imbib"
2282+ , "imgurder"
2283+ , "imm"
2284+ , "imparse"
2285+ , "ImperativeHaskell"
2286+ , "implicit"
2287+ , "improve"
2288+ , "INblobs"
2289+ , "inch"
2290+ , "include-file"
2291+ , "incremental-computing"
2292+ , "incremental-sat-solver"
2293+ , "increments"
2294+ , "index-core"
2295+ , "indian-language-font-converter"
2296+ , "indices"
2297+ , "infernu"
2298+ , "infer-upstream"
2299+ , "infinity"
2300+ , "infix"
2301+ , "InfixApplicative"
2302+ , "inflections"
2303+ , "inflist"
2304+ , "informative"
2305+ , "instant-generics"
2306+ , "instant-zipper"
2307+ , "integer-pure"
2308+ , "intel-aes"
2309+ , "interleavableGen"
2310+ , "interleavableIO"
2311+ , "internetmarke"
2312+ , "interpolatedstring-qq"
2313+ , "interpolatedstring-qq-mwotton"
2314+ , "intricacy"
2315+ , "intset"
2316+ , "IOR"
2317+ , "io-reactive"
2318+ , "IORefCAS"
2319+ , "iotransaction"
2320+ , "ipatch"
2321+ , "ipc"
2322+ , "ipprint"
2323+ , "iptables-helpers"
2324+ , "iptadmin"
2325+ , "Irc"
2326+ , "ircbot"
2327+ , "ircbouncer"
2328+ , "irc-client"
2329+ , "ironforge"
2330+ , "iron-mq"
2331+ , "IrrHaskell"
2332+ , "isevaluated"
2333+ , "ismtp"
2334+ , "iteratee"
2335+ , "iteratee-compress"
2336+ , "iteratee-parsec"
2337+ , "iteratee-stm"
2338+ , "iterIO"
2339+ , "iterio-server"
2340+ , "iter-stats"
2341+ , "ivar-simple"
2342+ , "ivor"
2343+ , "ivory"
2344+ , "ivory-opts"
2345+ , "ivory-quickcheck"
2346+ , "ivory-stdlib"
2347+ , "ivy-web"
2348+ , "ixdopp"
2349+ , "ixset-typed"
2350+ , "iyql"
2351+ , "j2hs"
2352+ , "jack-bindings"
2353+ , "jackminimix"
2354+ , "JackMiniMix"
2355+ , "jalla"
2356+ , "jammittools"
2357+ , "jarfind"
2358+ , "java-bridge"
2359+ , "java-bridge-extras"
2360+ , "java-reflect"
2361+ , "javasf"
2362+ , "Javasf"
2363+ , "javav"
2364+ , "Javav"
2365+ , "jespresso"
2366+ , "jmacro"
2367+ , "jmacro-rpc"
2368+ , "jmacro-rpc-happstack"
2369+ , "jmacro-rpc-snap"
2370+ , "jobqueue"
2371+ , "join"
2372+ , "joinlist"
2373+ , "jonathanscard"
2374+ , "jort"
2375+ , "jose"
2376+ , "jsc"
2377+ , "JsContracts"
2378+ , "js-good-parts"
2379+ , "jsmw"
2380+ , "json2"
2381+ , "json2-hdbc"
2382+ , "json-b"
2383+ , "JSONb"
2384+ , "JSON-Combinator"
2385+ , "JSON-Combinator-Examples"
2386+ , "JsonGrammar"
2387+ , "json-qq"
2388+ , "jsonresume"
2389+ , "json-rpc"
2390+ , "json-tools"
2391+ , "jspath"
2392+ , "judy"
2393+ , "JuicyPixels-repa"
2394+ , "JunkDB-driver-gdbm"
2395+ , "JYU-Utils"
2396+ , "kangaroo"
2397+ , "kansas-lava"
2398+ , "kansas-lava-cores"
2399+ , "kansas-lava-papilio"
2400+ , "kansas-lava-shake"
2401+ , "katt"
2402+ , "keiretsu"
2403+ , "Ketchup"
2404+ , "kevin"
2405+ , "keyring"
2406+ , "keystore"
2407+ , "kibro"
2408+ , "kicad-data"
2409+ , "kickass-torrents-dump-parser"
2410+ , "KiCS"
2411+ , "KiCS-debugger"
2412+ , "KiCS-prophecy"
2413+ , "kif-parser"
2414+ , "kit"
2415+ , "kmeans-par"
2416+ , "koellner-phonetic"
2417+ , "Konf"
2418+ , "korfu"
2419+ , "kqueue"
2420+ , "kure-your-boilerplate"
2421+ , "KyotoCabinet"
2422+ , "labeled-graph"
2423+ , "labyrinth"
2424+ , "labyrinth-server"
2425+ , "lambda2js"
2426+ , "lambdaBase"
2427+ , "lambdabot"
2428+ , "lambdabot-core"
2429+ , "lambdabot-haskell-plugins"
2430+ , "lambdabot-irc-plugins"
2431+ , "lambdabot-misc-plugins"
2432+ , "lambdabot-novelty-plugins"
2433+ , "lambdabot-reference-plugins"
2434+ , "lambdabot-social-plugins"
2435+ , "lambdabot-utils"
2436+ , "lambda-bridge"
2437+ , "LambdaCalculator"
2438+ , "lambdacat"
2439+ , "lambdacms-core"
2440+ , "lambdacms-media"
2441+ , "lambdacube"
2442+ , "lambdacube-bullet"
2443+ , "lambdacube-engine"
2444+ , "lambdacube-examples"
2445+ , "lambdacube-gl"
2446+ , "lambdacube-samples"
2447+ , "lambda-devs"
2448+ , "lambdaFeed"
2449+ , "LambdaHack"
2450+ , "LambdaINet"
2451+ , "lambdaLit"
2452+ , "LambdaPrettyQuote"
2453+ , "LambdaShell"
2454+ , "lambda-toolbox"
2455+ , "lambdatwit"
2456+ , "lambdiff"
2457+ , "lame-tester"
2458+ , "language-bash"
2459+ , "language-boogie"
2460+ , "language-c-comments"
2461+ , "language-c-inline"
2462+ , "language-eiffel"
2463+ , "language-glsl"
2464+ , "language-go"
2465+ , "language-java-classfile"
2466+ , "language-mixal"
2467+ , "language-objc"
2468+ , "language-puppet"
2469+ , "language-python-colour"
2470+ , "language-sh"
2471+ , "language-spelling"
2472+ , "language-sqlite"
2473+ , "language-thrift"
2474+ , "Lastik"
2475+ , "lat"
2476+ , "latest-npm-version"
2477+ , "Lattices"
2478+ , "layers"
2479+ , "layout"
2480+ , "layout-bootstrap"
2481+ , "lazyarray"
2482+ , "lazysplines"
2483+ , "l-bfgs-b"
2484+ , "lcs"
2485+ , "ldap-client"
2486+ , "ldif"
2487+ , "leaf"
2488+ , "leaky"
2489+ , "learn-physics"
2490+ , "learn-physics-examples"
2491+ , "leksah"
2492+ , "leksah-server"
2493+ , "lendingclub"
2494+ , "lenses"
2495+ , "Level0"
2496+ , "leveldb-haskell-fork"
2497+ , "levmar"
2498+ , "levmar-chart"
2499+ , "lgtk"
2500+ , "lha"
2501+ , "lhae"
2502+ , "lhe"
2503+ , "LibClang"
2504+ , "libcspm"
2505+ , "libexpect"
2506+ , "libGenI"
2507+ , "libgit"
2508+ , "libhbb"
2509+ , "libjenkins"
2510+ , "libltdl"
2511+ , "liboleg"
2512+ , "libpq"
2513+ , "libssh2-conduit"
2514+ , "libsystemd-daemon"
2515+ , "libvirt-hs"
2516+ , "libxml"
2517+ , "libxslt"
2518+ , "lifter"
2519+ , "lighttpd-conf"
2520+ , "lighttpd-conf-qq"
2521+ , "lilypond"
2522+ , "Limit"
2523+ , "limp"
2524+ , "limp-cbc"
2525+ , "lin-alg"
2526+ , "linear-accelerate"
2527+ , "linear-algebra-cblas"
2528+ , "linear-maps"
2529+ , "linearscan-hoopl"
2530+ , "LinearSplit"
2531+ , "LinkChecker"
2532+ , "linkchk"
2533+ , "linkcore"
2534+ , "linklater"
2535+ , "linux-blkid"
2536+ , "linux-kmod"
2537+ , "linux-perf"
2538+ , "linux-ptrace"
2539+ , "lio-eci11"
2540+ , "lio-simple"
2541+ , "liquidhaskell"
2542+ , "listlike-instances"
2543+ , "list-remote-forwards"
2544+ , "ListTree"
2545+ , "literals"
2546+ , "live-sequencer"
2547+ , "ll-picosat"
2548+ , "llsd"
2549+ , "llvm-ffi"
2550+ , "llvm-general-quote"
2551+ , "llvm-ht"
2552+ , "lmdb"
2553+ , "loch"
2554+ , "lock-file"
2555+ , "log2json"
2556+ , "log-effect"
2557+ , "logging"
2558+ , "logic-classes"
2559+ , "LogicGrowsOnTrees"
2560+ , "LogicGrowsOnTrees-MPI"
2561+ , "LogicGrowsOnTrees-network"
2562+ , "LogicGrowsOnTrees-processes"
2563+ , "logic-TPTP"
2564+ , "lojban"
2565+ , "lojbanParser"
2566+ , "lojbanXiragan"
2567+ , "lojysamban"
2568+ , "loli"
2569+ , "loop-effin"
2570+ , "loopy"
2571+ , "lord"
2572+ , "loris"
2573+ , "lostcities"
2574+ , "lscabal"
2575+ , "L-seed"
2576+ , "LslPlus"
2577+ , "ls-usb"
2578+ , "lsystem"
2579+ , "luachunk"
2580+ , "lucienne"
2581+ , "Lucu"
2582+ , "lui"
2583+ , "luka"
2584+ , "luthor"
2585+ , "lvish"
2586+ , "lvmlib"
2587+ , "lye"
2588+ , "maam"
2589+ , "machinecell"
2590+ , "machines"
2591+ , "machines-directory"
2592+ , "machines-io"
2593+ , "machines-process"
2594+ , "machines-zlib"
2595+ , "mage"
2596+ , "magic"
2597+ , "MagicHaskeller"
2598+ , "magma"
2599+ , "mahoro"
2600+ , "maid"
2601+ , "mailbox-count"
2602+ , "majordomo"
2603+ , "majority"
2604+ , "make-package"
2605+ , "manatee"
2606+ , "manatee-anything"
2607+ , "manatee-browser"
2608+ , "manatee-core"
2609+ , "manatee-curl"
2610+ , "manatee-editor"
2611+ , "manatee-filemanager"
2612+ , "manatee-imageviewer"
2613+ , "manatee-mplayer"
2614+ , "manatee-pdfviewer"
2615+ , "manatee-processmanager"
2616+ , "manatee-reader"
2617+ , "manatee-template"
2618+ , "manatee-terminal"
2619+ , "manatee-welcome"
2620+ , "mandrill"
2621+ , "mandulia"
2622+ , "mangopay"
2623+ , "manifolds"
2624+ , "marionetta"
2625+ , "markdown2svg"
2626+ , "markdown-kate"
2627+ , "markdown-pap"
2628+ , "markov-processes"
2629+ , "markup-preview"
2630+ , "marmalade-upload"
2631+ , "marquise"
2632+ , "masakazu-bot"
2633+ , "matchers"
2634+ , "mathblog"
2635+ , "mathlink"
2636+ , "matlab"
2637+ , "matrices"
2638+ , "matsuri"
2639+ , "maude"
2640+ , "maxent"
2641+ , "maxsharing"
2642+ , "maybench"
2643+ , "MaybeT"
2644+ , "MaybeT-monads-tf"
2645+ , "MaybeT-transformers"
2646+ , "MazesOfMonad"
2647+ , "mbox-tools"
2648+ , "MC-Fold-DP"
2649+ , "mcmc-samplers"
2650+ , "Measure"
2651+ , "mecab"
2652+ , "mediawiki"
2653+ , "mediawiki2latex"
2654+ , "mega-sdist"
2655+ , "melody"
2656+ , "memcache-haskell"
2657+ , "memo-sqlite"
2658+ , "MetaObject"
2659+ , "meta-par-accelerate"
2660+ , "metaplug"
2661+ , "metric"
2662+ , "metrics"
2663+ , "Metrics"
2664+ , "metronome"
2665+ , "MFlow"
2666+ , "Mhailist"
2667+ , "MHask"
2668+ , "midimory"
2669+ , "midisurface"
2670+ , "mighttpd"
2671+ , "miku"
2672+ , "milena"
2673+ , "mime-directory"
2674+ , "mime-string"
2675+ , "minesweeper"
2676+ , "MiniAgda"
2677+ , "miniball"
2678+ , "miniforth"
2679+ , "minimung"
2680+ , "minioperational"
2681+ , "miniplex"
2682+ , "minirotate"
2683+ , "ministg"
2684+ , "mirror-tweet"
2685+ , "misfortune"
2686+ , "MissingPy"
2687+ , "missing-py2"
2688+ , "mix-arrows"
2689+ , "mkbndl"
2690+ , "mlist"
2691+ , "ml-w"
2692+ , "mmtl"
2693+ , "mmtl-base"
2694+ , "moan"
2695+ , "modelicaparser"
2696+ , "modsplit"
2697+ , "modular-prelude-classy"
2698+ , "module-management"
2699+ , "moe"
2700+ , "mohws"
2701+ , "monad-abort-fd"
2702+ , "monadacme"
2703+ , "monad-atom"
2704+ , "monad-atom-simple"
2705+ , "monad-bool"
2706+ , "MonadCatchIO-mtl-foreign"
2707+ , "MonadCatchIO-transformers-foreign"
2708+ , "monad-exception"
2709+ , "monadiccp"
2710+ , "monadiccp-gecode"
2711+ , "monad-interleave"
2712+ , "MonadLab"
2713+ , "monad-levels"
2714+ , "monad-lrs"
2715+ , "monad-memo"
2716+ , "monad-mersenne-random"
2717+ , "monad-peel"
2718+ , "monad-ran"
2719+ , "MonadRandomLazy"
2720+ , "monad-stlike-io"
2721+ , "monad-stlike-stm"
2722+ , "monad-tx"
2723+ , "monad-unify"
2724+ , "monarch"
2725+ , "Monaris"
2726+ , "Monatron"
2727+ , "Monatron-IO"
2728+ , "mongodb-queue"
2729+ , "mongrel2-handler"
2730+ , "Monocle"
2731+ , "mono-foldable"
2732+ , "monoid-owns"
2733+ , "monoidplus"
2734+ , "monoids"
2735+ , "monomorphic"
2736+ , "monte-carlo"
2737+ , "moo"
2738+ , "morfette"
2739+ , "morfeusz"
2740+ , "mount"
2741+ , "mp3decoder"
2742+ , "mpdmate"
2743+ , "mpppc"
2744+ , "mpretty"
2745+ , "mprover"
2746+ , "mps"
2747+ , "mpvguihs"
2748+ , "mqtt-hs"
2749+ , "msgpack-idl"
2750+ , "mstate"
2751+ , "mtgoxapi"
2752+ , "mtl-tf"
2753+ , "mtlx"
2754+ , "mtp"
2755+ , "mudbath"
2756+ , "mueval"
2757+ , "multifocal"
2758+ , "multipass"
2759+ , "multiplate-simplified"
2760+ , "multirec-alt-deriver"
2761+ , "multirec-binary"
2762+ , "multisetrewrite"
2763+ , "murmurhash3"
2764+ , "MusicBrainz"
2765+ , "musicbrainz-email"
2766+ , "music-graphics"
2767+ , "music-parts"
2768+ , "music-pitch"
2769+ , "music-preludes"
2770+ , "music-score"
2771+ , "music-sibelius"
2772+ , "music-suite"
2773+ , "music-util"
2774+ , "musicxml"
2775+ , "mustache2hs"
2776+ , "mutable-iter"
2777+ , "mvclient"
2778+ , "mysnapsession"
2779+ , "mysnapsession-example"
2780+ , "mysql-effect"
2781+ , "mysql-simple-quasi"
2782+ , "mysql-simple-typed"
2783+ , "myTestlll"
2784+ , "mzv"
2785+ , "named-lock"
2786+ , "nanoAgda"
2787+ , "nano-cryptr"
2788+ , "nanocurses"
2789+ , "nano-hmac"
2790+ , "nano-md5"
2791+ , "nanomsg-haskell"
2792+ , "narc"
2793+ , "nats-queue"
2794+ , "natural-number"
2795+ , "ncurses"
2796+ , "neat"
2797+ , "needle"
2798+ , "nemesis"
2799+ , "nemesis-titan"
2800+ , "nerf"
2801+ , "nero"
2802+ , "nero-wai"
2803+ , "nero-warp"
2804+ , "nested-routes"
2805+ , "netlines"
2806+ , "NetSNMP"
2807+ , "netspec"
2808+ , "nettle"
2809+ , "network-address"
2810+ , "network-anonymous-i2p"
2811+ , "network-api-support"
2812+ , "network-builder"
2813+ , "network-bytestring"
2814+ , "network-connection"
2815+ , "network-data"
2816+ , "network-house"
2817+ , "network-minihttp"
2818+ , "Network-NineP"
2819+ , "network-protocol-xmpp"
2820+ , "network-rpca"
2821+ , "network-server"
2822+ , "network-service"
2823+ , "network-simple-tls"
2824+ , "network-topic-models"
2825+ , "network-transport-amqp"
2826+ , "network-transport-zeromq"
2827+ , "network-websocket"
2828+ , "newports"
2829+ , "newsynth"
2830+ , "newt"
2831+ , "newtype-th"
2832+ , "NGrams"
2833+ , "ngrams-loader"
2834+ , "nibblestring"
2835+ , "nicovideo-translator"
2836+ , "nikepub"
2837+ , "Ninjas"
2838+ , "nitro"
2839+ , "nixos-types"
2840+ , "nkjp"
2841+ , "nm"
2842+ , "nme"
2843+ , "nntp"
2844+ , "noise"
2845+ , "Nomyx"
2846+ , "Nomyx-Core"
2847+ , "Nomyx-Language"
2848+ , "Nomyx-Rules"
2849+ , "Nomyx-Web"
2850+ , "nondeterminism"
2851+ , "NonEmptyList"
2852+ , "noodle"
2853+ , "NoSlow"
2854+ , "not-gloss-examples"
2855+ , "notmuch-haskell"
2856+ , "notmuch-web"
2857+ , "np-linear"
2858+ , "nptools"
2859+ , "nthable"
2860+ , "null-canvas"
2861+ , "NumberSieves"
2862+ , "numerals"
2863+ , "numerals-base"
2864+ , "numeric-qq"
2865+ , "nums"
2866+ , "Nussinov78"
2867+ , "NXT"
2868+ , "NXTDSL"
2869+ , "nyan"
2870+ , "nymphaea"
2871+ , "obj"
2872+ , "Object"
2873+ , "ObjectIO"
2874+ , "octohat"
2875+ , "octopus"
2876+ , "oculus"
2877+ , "ofx"
2878+ , "OGL"
2879+ , "ohloh-hs"
2880+ , "oi"
2881+ , "ois-input-manager"
2882+ , "olwrapper"
2883+ , "omaketex"
2884+ , "omega"
2885+ , "Omega"
2886+ , "omnicodec"
2887+ , "on-a-horse"
2888+ , "one-liner"
2889+ , "oneormore"
2890+ , "onu-course"
2891+ , "OpenAFP"
2892+ , "OpenAFP-Utils"
2893+ , "OpenCL"
2894+ , "OpenCLRaw"
2895+ , "opencv-raw"
2896+ , "openexchangerates"
2897+ , "OpenGLCheck"
2898+ , "opengles"
2899+ , "openid"
2900+ , "open-pandoc"
2901+ , "openpgp-Crypto"
2902+ , "openpgp-crypto-api"
2903+ , "openssh-github-keys"
2904+ , "opentheory"
2905+ , "opentheory-char"
2906+ , "opentheory-parser"
2907+ , "opentheory-prime"
2908+ , "opentheory-primitive"
2909+ , "open-typerep"
2910+ , "open-union"
2911+ , "OpenVG"
2912+ , "OpenVGRaw"
2913+ , "open-witness"
2914+ , "Operads"
2915+ , "orchestrate"
2916+ , "orchid"
2917+ , "orchid-demo"
2918+ , "orgmode-parse"
2919+ , "origami"
2920+ , "OSM"
2921+ , "osm-download"
2922+ , "ot"
2923+ , "package-vt"
2924+ , "packedstring"
2925+ , "pagarme"
2926+ , "PageIO"
2927+ , "panda"
2928+ , "PandocAgda"
2929+ , "pandoc-citeproc"
2930+ , "pandoc-unlit"
2931+ , "papillon"
2932+ , "pappy"
2933+ , "paragon"
2934+ , "Paraiso"
2935+ , "parallel-tasks"
2936+ , "parameterized-data"
2937+ , "parco"
2938+ , "parco-attoparsec"
2939+ , "parconc-examples"
2940+ , "parco-parsec"
2941+ , "Parry"
2942+ , "parsec2"
2943+ , "parse-help"
2944+ , "parsek"
2945+ , "parsely"
2946+ , "parser-helper"
2947+ , "parsestar"
2948+ , "partial-lens"
2949+ , "partly"
2950+ , "passage"
2951+ , "pastis"
2952+ , "pasty"
2953+ , "Pathfinder"
2954+ , "pathfindingcore"
2955+ , "patronscraper"
2956+ , "patterns"
2957+ , "paypal-adaptive-hoops"
2958+ , "paypal-api"
2959+ , "pb"
2960+ , "PCLT"
2961+ , "PCLT-DB"
2962+ , "pdf-toolbox-content"
2963+ , "pdf-toolbox-core"
2964+ , "pdf-toolbox-document"
2965+ , "pdf-toolbox-viewer"
2966+ , "pdynload"
2967+ , "peakachu"
2968+ , "pec"
2969+ , "peg"
2970+ , "penny"
2971+ , "penny-bin"
2972+ , "penny-lib"
2973+ , "peparser"
2974+ , "perdure"
2975+ , "PerfectHash"
2976+ , "perm"
2977+ , "permute"
2978+ , "PermuteEffects"
2979+ , "persistent-hssqlppp"
2980+ , "persistent-map"
2981+ , "persistent-protobuf"
2982+ , "persistent-vector"
2983+ , "persona"
2984+ , "persona-idp"
2985+ , "pesca"
2986+ , "peyotls"
2987+ , "pez"
2988+ , "pgdl"
2989+ , "pgsql-simple"
2990+ , "phasechange"
2991+ , "phone-push"
2992+ , "phooey"
2993+ , "photoname"
2994+ , "phraskell"
2995+ , "pianola"
2996+ , "pi-calculus"
2997+ , "picologic"
2998+ , "piet"
2999+ , "piki"
3000+ , "pinboard"
3001+ , "Pipe"
3002+ , "pipes-cereal-plus"
3003+ , "pipes-conduit"
3004+ , "pipes-network-tls"
3005+ , "pipes-p2p-examples"
3006+ , "pipes-vector"
3007+ , "pisigma"
3008+ , "pit"
3009+ , "pkggraph"
3010+ , "planar-graph"
3011+ , "plat"
3012+ , "plivo"
3013+ , "PlslTools"
3014+ , "plugins"
3015+ , "plugins-auto"
3016+ , "plumbers"
3017+ , "png-file"
3018+ , "pngload"
3019+ , "pngload-fixed"
3020+ , "pointless-haskell"
3021+ , "pointless-lenses"
3022+ , "pointless-rewrite"
3023+ , "polh-lexicon"
3024+ , "polynomial"
3025+ , "polyseq"
3026+ , "polytypeable"
3027+ , "polytypeable-utils"
3028+ , "pontarius-mediaserver"
3029+ , "pontarius-xmpp"
3030+ , "pontarius-xpmn"
3031+ , "pool"
3032+ , "pool-conduit"
3033+ , "popenhs"
3034+ , "poppler"
3035+ , "porte"
3036+ , "porter"
3037+ , "ports"
3038+ , "positive"
3039+ , "posix-acl"
3040+ , "posix-pty"
3041+ , "posix-waitpid"
3042+ , "PostgreSQL"
3043+ , "postgresql-orm"
3044+ , "postgresql-simple-typed"
3045+ , "postgresql-typed"
3046+ , "postgrest"
3047+ , "postmark"
3048+ , "postmaster"
3049+ , "powermate"
3050+ , "powerpc"
3051+ , "pqc"
3052+ , "pqueue"
3053+ , "pqueue-mtl"
3054+ , "practice-room"
3055+ , "precis"
3056+ , "prefork"
3057+ , "pregame"
3058+ , "prelude-generalize"
3059+ , "prelude-plus"
3060+ , "preprocess-haskell"
3061+ , "present"
3062+ , "press"
3063+ , "primula-board"
3064+ , "primula-bot"
3065+ , "Printf-TH"
3066+ , "PriorityChansConverger"
3067+ , "priority-queue"
3068+ , "ProbabilityMonads"
3069+ , "proc"
3070+ , "process-iterio"
3071+ , "process-leksah"
3072+ , "process-listlike"
3073+ , "process-progress"
3074+ , "process-qq"
3075+ , "procrastinating-structure"
3076+ , "procrastinating-variable"
3077+ , "procstat"
3078+ , "prof2dot"
3079+ , "profunctor-extras"
3080+ , "progress"
3081+ , "progressbar"
3082+ , "progression"
3083+ , "progressive"
3084+ , "proj4-hs-bindings"
3085+ , "prolog"
3086+ , "propane"
3087+ , "Proper"
3088+ , "property-list"
3089+ , "proplang"
3090+ , "props"
3091+ , "prosper"
3092+ , "protobuf-native"
3093+ , "protocol-buffers"
3094+ , "protocol-buffers-descriptor"
3095+ , "protocol-buffers-descriptor-fork"
3096+ , "protocol-buffers-fork"
3097+ , "prove-everywhere-server"
3098+ , "proxy-kindness"
3099+ , "pseudomacros"
3100+ , "pub"
3101+ , "publicsuffixlistcreate"
3102+ , "pubnub"
3103+ , "pubsub"
3104+ , "puffytools"
3105+ , "Pugs"
3106+ , "pugs-compat"
3107+ , "pugs-DrIFT"
3108+ , "pugs-hsregex"
3109+ , "pugs-HsSyck"
3110+ , "pulse-simple"
3111+ , "punkt"
3112+ , "Pup-Events"
3113+ , "Pup-Events-Demo"
3114+ , "puppetresources"
3115+ , "pushme"
3116+ , "push-notify"
3117+ , "push-notify-ccs"
3118+ , "push-notify-general"
3119+ , "putlenses"
3120+ , "puzzle-draw"
3121+ , "puzzle-draw-cmdline"
3122+ , "pvd"
3123+ , "python-pickle"
3124+ , "qd"
3125+ , "qd-vec"
3126+ , "qhull-simple"
3127+ , "QIO"
3128+ , "quandl-api"
3129+ , "quantum-arrow"
3130+ , "qudb"
3131+ , "querystring-pickle"
3132+ , "queuelike"
3133+ , "QuickAnnotate"
3134+ , "QuickCheck-GenT"
3135+ , "quickcheck-poly"
3136+ , "quickcheck-regex"
3137+ , "quickcheck-relaxng"
3138+ , "quickcheck-rematch"
3139+ , "quickcheck-webdriver"
3140+ , "quickset"
3141+ , "Quickson"
3142+ , "quicktest"
3143+ , "quoridor-hs"
3144+ , "rabocsv2qif"
3145+ , "rad"
3146+ , "radium"
3147+ , "radium-formula-parser"
3148+ , "rail-compiler-editor"
3149+ , "rainbow-tests"
3150+ , "Raincat"
3151+ , "rakhana"
3152+ , "ralist"
3153+ , "rallod"
3154+ , "random-access-list"
3155+ , "RandomDotOrg"
3156+ , "random-eff"
3157+ , "random-effin"
3158+ , "random-hypergeometric"
3159+ , "random-stream"
3160+ , "rand-vars"
3161+ , "range"
3162+ , "rangemin"
3163+ , "range-space"
3164+ , "rank1dynamic"
3165+ , "Ranka"
3166+ , "Rasenschach"
3167+ , "raven-haskell"
3168+ , "raven-haskell-scotty"
3169+ , "rbr"
3170+ , "rdf4h"
3171+ , "rdioh"
3172+ , "react-haskell"
3173+ , "reaction-logic"
3174+ , "reactive"
3175+ , "reactive-bacon"
3176+ , "reactive-balsa"
3177+ , "reactive-banana"
3178+ , "reactive-banana-sdl"
3179+ , "reactive-banana-threepenny"
3180+ , "reactive-banana-wx"
3181+ , "reactive-fieldtrip"
3182+ , "reactive-glut"
3183+ , "reactive-thread"
3184+ , "reactor"
3185+ , "really-simple-xml-parser"
3186+ , "reasonable-lens"
3187+ , "records"
3188+ , "records-th"
3189+ , "recursion-schemes"
3190+ , "redHandlers"
3191+ , "ref"
3192+ , "Ref"
3193+ , "Referees"
3194+ , "refh"
3195+ , "reflection-extras"
3196+ , "reform-hsp"
3197+ , "regex-deriv"
3198+ , "regex-dfa"
3199+ , "regex-genex"
3200+ , "regex-parsec"
3201+ , "regex-pderiv"
3202+ , "regexp-tries"
3203+ , "regexqq"
3204+ , "regex-tdfa-text"
3205+ , "regex-tdfa-utf8"
3206+ , "regex-tre"
3207+ , "regex-xmlschema"
3208+ , "regional-pointers"
3209+ , "regions"
3210+ , "regions-monadsfd"
3211+ , "regions-monadstf"
3212+ , "regions-mtl"
3213+ , "regular-extras"
3214+ , "regular-web"
3215+ , "reheat"
3216+ , "reified-records"
3217+ , "reify"
3218+ , "relational-postgresql8"
3219+ , "relational-query"
3220+ , "relational-query-HDBC"
3221+ , "relational-record"
3222+ , "relational-record-examples"
3223+ , "relational-schemas"
3224+ , "relative-date"
3225+ , "remote"
3226+ , "remote-debugger"
3227+ , "remotion"
3228+ , "reorderable"
3229+ , "repa-bytestring"
3230+ , "repa-fftw"
3231+ , "repa-flow"
3232+ , "repa-plugin"
3233+ , "repa-series"
3234+ , "repa-v4l2"
3235+ , "repl"
3236+ , "RepLib"
3237+ , "repo-based-blog"
3238+ , "repr"
3239+ , "representable-functors"
3240+ , "representable-profunctors"
3241+ , "representable-tries"
3242+ , "resource-effect"
3243+ , "resource-embed"
3244+ , "resource-simple"
3245+ , "restful-snap"
3246+ , "RESTng"
3247+ , "restricted-workers"
3248+ , "resumable-exceptions"
3249+ , "rethinkdb"
3250+ , "rethinkdb-client-driver"
3251+ , "rethinkdb-model"
3252+ , "rethinkdb-wereHamster"
3253+ , "reverse-geocoding"
3254+ , "ReviewBoard"
3255+ , "rewrite"
3256+ , "rewriting"
3257+ , "rezoom"
3258+ , "rfc3339"
3259+ , "riak"
3260+ , "riak-protobuf"
3261+ , "riot"
3262+ , "ripple"
3263+ , "ripple-federation"
3264+ , "risc386"
3265+ , "rivers"
3266+ , "RJson"
3267+ , "rmonad"
3268+ , "RMP"
3269+ , "RNAdesign"
3270+ , "RNAFold"
3271+ , "RNAFoldProgs"
3272+ , "RNAwolf"
3273+ , "robot"
3274+ , "rocksdb-haskell"
3275+ , "roguestar"
3276+ , "roguestar-engine"
3277+ , "roguestar-gl"
3278+ , "roguestar-glut"
3279+ , "RollingDirectory"
3280+ , "rope"
3281+ , "rosa"
3282+ , "roshask"
3283+ , "rosso"
3284+ , "rotating-log"
3285+ , "rounding"
3286+ , "roundtrip"
3287+ , "roundtrip-string"
3288+ , "roundtrip-xml"
3289+ , "route-generator"
3290+ , "route-planning"
3291+ , "rowrecord"
3292+ , "rpc"
3293+ , "rpc-framework"
3294+ , "rpm"
3295+ , "rsagl"
3296+ , "rsagl-frp"
3297+ , "rsagl-math"
3298+ , "rss2irc"
3299+ , "rtlsdr"
3300+ , "rubberband"
3301+ , "ruff"
3302+ , "ruler"
3303+ , "ruler-core"
3304+ , "rungekutta"
3305+ , "RxHaskell"
3306+ , "safe-freeze"
3307+ , "safe-globals"
3308+ , "safeint"
3309+ , "safe-lazy-io"
3310+ , "safe-plugins"
3311+ , "safer-file-handles"
3312+ , "safer-file-handles-bytestring"
3313+ , "safer-file-handles-text"
3314+ , "sai-shape-syb"
3315+ , "Salsa"
3316+ , "salvia"
3317+ , "salvia-demo"
3318+ , "salvia-extras"
3319+ , "salvia-protocol"
3320+ , "salvia-sessions"
3321+ , "salvia-websocket"
3322+ , "samtools-iteratee"
3323+ , "sasl"
3324+ , "sat"
3325+ , "satchmo"
3326+ , "satchmo-backends"
3327+ , "satchmo-examples"
3328+ , "satchmo-funsat"
3329+ , "satchmo-minisat"
3330+ , "satchmo-toysat"
3331+ , "sat-micro-hs"
3332+ , "SBench"
3333+ , "scaleimage"
3334+ , "scan-vector-machine"
3335+ , "scat"
3336+ , "scenegraph"
3337+ , "schedevr"
3338+ , "scholdoc"
3339+ , "scholdoc-citeproc"
3340+ , "scion"
3341+ , "scion-browser"
3342+ , "scope"
3343+ , "scope-cairo"
3344+ , "scotty-blaze"
3345+ , "scotty-fay"
3346+ , "scotty-session"
3347+ , "scrabble-bot"
3348+ , "ScratchFs"
3349+ , "scrobble"
3350+ , "scroll"
3351+ , "scrz"
3352+ , "Scurry"
3353+ , "scyther-proof"
3354+ , "SDL"
3355+ , "sdl2-image"
3356+ , "sdl2-ttf"
3357+ , "SDL2-ttf"
3358+ , "SDL-gfx"
3359+ , "SDL-image"
3360+ , "SDL-mixer"
3361+ , "SDL-mpeg"
3362+ , "SDL-ttf"
3363+ , "seacat"
3364+ , "search"
3365+ , "secdh"
3366+ , "second-transfer"
3367+ , "secret-santa"
3368+ , "secret-sharing"
3369+ , "secrm"
3370+ , "sednaDBXML"
3371+ , "selectors"
3372+ , "selenium"
3373+ , "selenium-server"
3374+ , "selinux"
3375+ , "Semantique"
3376+ , "semigroupoid-extras"
3377+ , "semigroups-actions"
3378+ , "semiring"
3379+ , "sensenet"
3380+ , "sentry"
3381+ , "senza"
3382+ , "seqaid"
3383+ , "seqloc-datafiles"
3384+ , "sequent-core"
3385+ , "sequor"
3386+ , "serf"
3387+ , "servant-pool"
3388+ , "servant-postgresql"
3389+ , "servant-scotty"
3390+ , "servius"
3391+ , "ses-html"
3392+ , "ses-html-snaplet"
3393+ , "SessionLogger"
3394+ , "sessions"
3395+ , "sexp"
3396+ , "sexpr"
3397+ , "sext"
3398+ , "SFML"
3399+ , "SFML-control"
3400+ , "SFont"
3401+ , "SG"
3402+ , "SGdemo"
3403+ , "sgrep"
3404+ , "shady-gen"
3405+ , "shady-graphics"
3406+ , "shake-extras"
3407+ , "shake-language-c"
3408+ , "shaker"
3409+ , "shakespeare-css"
3410+ , "shakespeare-i18n"
3411+ , "shapely-data"
3412+ , "shared-buffer"
3413+ , "she"
3414+ , "Shellac"
3415+ , "Shellac-compatline"
3416+ , "Shellac-editline"
3417+ , "Shellac-haskeline"
3418+ , "Shellac-readline"
3419+ , "shellish"
3420+ , "shell-monad"
3421+ , "shell-pipe"
3422+ , "shelly-extra"
3423+ , "shivers-cfg"
3424+ , "showdown"
3425+ , "shpider"
3426+ , "shuffle"
3427+ , "sifflet"
3428+ , "sifflet-lib"
3429+ , "signals"
3430+ , "simd"
3431+ , "simgi"
3432+ , "simple"
3433+ , "simple-bluetooth"
3434+ , "simple-css"
3435+ , "simple-c-value"
3436+ , "simple-firewire"
3437+ , "simple-form"
3438+ , "SimpleGL"
3439+ , "SimpleH"
3440+ , "simpleirc"
3441+ , "simpleirc-lens"
3442+ , "SimpleLog"
3443+ , "simple-log-syslog"
3444+ , "simplenote"
3445+ , "simple-pascal"
3446+ , "simple-postgresql-orm"
3447+ , "simpleprelude"
3448+ , "simple-session"
3449+ , "simple-sessions"
3450+ , "simplessh"
3451+ , "simple-templates"
3452+ , "simple-vec3"
3453+ , "simseq"
3454+ , "sindre"
3455+ , "singletons"
3456+ , "sirkel"
3457+ , "sitemap"
3458+ , "sized"
3459+ , "sized-types"
3460+ , "sized-vector"
3461+ , "skype4hs"
3462+ , "slack"
3463+ , "slack-api"
3464+ , "sloane"
3465+ , "sloth"
3466+ , "smallarray"
3467+ , "smallpt-hs"
3468+ , "smallstring"
3469+ , "smartGroup"
3470+ , "smartword"
3471+ , "sme"
3472+ , "Smooth"
3473+ , "smt-lib"
3474+ , "smtlib2"
3475+ , "smtp2mta"
3476+ , "snake-game"
3477+ , "snap-accept"
3478+ , "snap-app"
3479+ , "snap-elm"
3480+ , "snap-extras"
3481+ , "snaplet-actionlog"
3482+ , "snaplet-auth-acid"
3483+ , "snaplet-css-min"
3484+ , "snaplet-environments"
3485+ , "snaplet-fay"
3486+ , "snaplet-haxl"
3487+ , "snaplet-hdbc"
3488+ , "snaplet-i18n"
3489+ , "snaplet-mandrill"
3490+ , "snaplet-mongoDB"
3491+ , "snaplet-mongodb-minimalistic"
3492+ , "snaplet-mysql-simple"
3493+ , "snaplet-oauth"
3494+ , "snaplet-postmark"
3495+ , "snaplet-purescript"
3496+ , "snaplet-redson"
3497+ , "snaplet-rest"
3498+ , "snaplet-riak"
3499+ , "snaplet-sedna"
3500+ , "snaplet-ses-html"
3501+ , "snaplet-sqlite-simple"
3502+ , "snaplet-tasks"
3503+ , "snaplet-typed-sessions"
3504+ , "snap-predicates"
3505+ , "snappy-iteratee"
3506+ , "snap-testing"
3507+ , "snap-utils"
3508+ , "sndfile-enumerators"
3509+ , "SNet"
3510+ , "snm"
3511+ , "snow-white"
3512+ , "Snusmumrik"
3513+ , "soap"
3514+ , "soap-openssl"
3515+ , "soap-tls"
3516+ , "SoccerFun"
3517+ , "SoccerFunGL"
3518+ , "sock2stream"
3519+ , "socketio"
3520+ , "sonic-visualiser"
3521+ , "SoOSiM"
3522+ , "sort-by-pinyin"
3523+ , "sorted"
3524+ , "sound-collage"
3525+ , "source-code-server"
3526+ , "sousit"
3527+ , "soxlib"
3528+ , "soyuz"
3529+ , "SpaceInvaders"
3530+ , "SpacePrivateers"
3531+ , "sparse"
3532+ , "sparsebit"
3533+ , "sparsecheck"
3534+ , "spata"
3535+ , "special-functors"
3536+ , "specialize-th"
3537+ , "species"
3538+ , "speculation-transformers"
3539+ , "spelling-suggest"
3540+ , "sphero"
3541+ , "sphinx-cli"
3542+ , "spice"
3543+ , "spike"
3544+ , "splaytree"
3545+ , "splines"
3546+ , "split-record"
3547+ , "splitter"
3548+ , "splot"
3549+ , "Spock-auth"
3550+ , "Spock-digestive"
3551+ , "spoonutil"
3552+ , "spoty"
3553+ , "Sprig"
3554+ , "SQLDeps"
3555+ , "sqlite-simple-typed"
3556+ , "sql-simple"
3557+ , "sql-simple-mysql"
3558+ , "sql-simple-pool"
3559+ , "sql-simple-postgresql"
3560+ , "sql-simple-sqlite"
3561+ , "sql-words"
3562+ , "srcinst"
3563+ , "sscgi"
3564+ , "ssh"
3565+ , "sssp"
3566+ , "sstable"
3567+ , "stackage-curator"
3568+ , "stack-prism"
3569+ , "starrover2"
3570+ , "stateful-mtl"
3571+ , "statgrab"
3572+ , "statistics-dirichlet"
3573+ , "statistics-fusion"
3574+ , "stb-image"
3575+ , "stb-truetype"
3576+ , "stepwise"
3577+ , "stm-chunked-queues"
3578+ , "stmcontrol"
3579+ , "stm-firehose"
3580+ , "stm-io-hooks"
3581+ , "Stomp"
3582+ , "storable-static-array"
3583+ , "storablevector"
3584+ , "storablevector-carray"
3585+ , "storablevector-streamfusion"
3586+ , "Strafunski-Sdf2Haskell"
3587+ , "StrappedTemplates"
3588+ , "streamed"
3589+ , "stream-fusion"
3590+ , "streams"
3591+ , "StrictBench"
3592+ , "strict-concurrency"
3593+ , "string"
3594+ , "stringlike"
3595+ , "stripe-haskell"
3596+ , "strive"
3597+ , "structural-induction"
3598+ , "structured-mongoDB"
3599+ , "structures"
3600+ , "stunts"
3601+ , "suitable"
3602+ , "sunlight"
3603+ , "sunroof-compiler"
3604+ , "sunroof-examples"
3605+ , "sunroof-server"
3606+ , "supercollider-midi"
3607+ , "superdoc"
3608+ , "supero"
3609+ , "supervisor"
3610+ , "svg2q"
3611+ , "SVG2Q"
3612+ , "SVGFonts"
3613+ , "svm-simple"
3614+ , "svndump"
3615+ , "swagger"
3616+ , "swapper"
3617+ , "swearjure"
3618+ , "swf"
3619+ , "swift-lda"
3620+ , "syb-extras"
3621+ , "sylvia"
3622+ , "sym-plot"
3623+ , "sync"
3624+ , "synchronous-channels"
3625+ , "syncthing-hs"
3626+ , "syntactic"
3627+ , "syntax-trees"
3628+ , "syntax-trees-fork-bairyn"
3629+ , "synthesizer"
3630+ , "synthesizer-alsa"
3631+ , "synthesizer-core"
3632+ , "synthesizer-dimensional"
3633+ , "synthesizer-midi"
3634+ , "Sysmon"
3635+ , "system-lifted"
3636+ , "system-random-effect"
3637+ , "ta"
3638+ , "Tables"
3639+ , "tablestorage"
3640+ , "tabloid"
3641+ , "tagged-exception-core"
3642+ , "tagged-list"
3643+ , "tagged-th"
3644+ , "taggy"
3645+ , "taggy-lens"
3646+ , "tagsoup-ht"
3647+ , "tagsoup-parsec"
3648+ , "takahashi"
3649+ , "Takusen"
3650+ , "takusen-oracle"
3651+ , "tamarin-prover"
3652+ , "tamarin-prover-term"
3653+ , "tamarin-prover-theory"
3654+ , "tamarin-prover-utils"
3655+ , "tamper"
3656+ , "target"
3657+ , "task"
3658+ , "tasty-integrate"
3659+ , "TBC"
3660+ , "tbox"
3661+ , "tccli"
3662+ , "tcp"
3663+ , "tdd-util"
3664+ , "TeaHS"
3665+ , "template-default"
3666+ , "template-haskell-util"
3667+ , "template-hsml"
3668+ , "templatepg"
3669+ , "tempodb"
3670+ , "temporal-csound"
3671+ , "tempus"
3672+ , "tensor"
3673+ , "term-rewriting"
3674+ , "terrahs"
3675+ , "tersmu"
3676+ , "test-framework-doctest"
3677+ , "test-framework-quickcheck"
3678+ , "test-framework-th-prime"
3679+ , "testloop"
3680+ , "testpattern"
3681+ , "testPkg"
3682+ , "testrunner"
3683+ , "tetris"
3684+ , "tex2txt"
3685+ , "texrunner"
3686+ , "text-json-qq"
3687+ , "text-ldap"
3688+ , "textmatetags"
3689+ , "text-normal"
3690+ , "textPlot"
3691+ , "text-register-machine"
3692+ , "texts"
3693+ , "text-show-instances"
3694+ , "text-xml-generic"
3695+ , "text-xml-qq"
3696+ , "tfp-th"
3697+ , "themoviedb"
3698+ , "themplate"
3699+ , "Theora"
3700+ , "theoremquest-client"
3701+ , "thih"
3702+ , "thimk"
3703+ , "Thingie"
3704+ , "th-instance-reification"
3705+ , "th-instances"
3706+ , "th-kinds"
3707+ , "th-lift-instances"
3708+ , "th-printf"
3709+ , "thrift"
3710+ , "Thrift"
3711+ , "throttle"
3712+ , "thyme"
3713+ , "tianbar"
3714+ , "tic-tac-toe"
3715+ , "TicTacToe"
3716+ , "tie-knot"
3717+ , "tiger"
3718+ , "tightrope"
3719+ , "tighttp"
3720+ , "timberc"
3721+ , "timecalc"
3722+ , "time-extras"
3723+ , "time-http"
3724+ , "timeout"
3725+ , "timeout-control"
3726+ , "timeparsers"
3727+ , "time-patterns"
3728+ , "TimePiece"
3729+ , "timeplot"
3730+ , "time-recurrence"
3731+ , "time-series"
3732+ , "timestamper"
3733+ , "timestamp-subprocess-lines"
3734+ , "time-w3c"
3735+ , "TinyLaunchbury"
3736+ , "TinyURL"
3737+ , "Titim"
3738+ , "tkhs"
3739+ , "tkyprof"
3740+ , "tls-extra"
3741+ , "todos"
3742+ , "to-haskell"
3743+ , "toilet"
3744+ , "token-bucket"
3745+ , "tokenize"
3746+ , "toktok"
3747+ , "tokyocabinet-haskell"
3748+ , "toml"
3749+ , "Top"
3750+ , "topkata"
3751+ , "torch"
3752+ , "torrent"
3753+ , "to-string-class"
3754+ , "to-string-instances"
3755+ , "Tournament"
3756+ , "toysolver"
3757+ , "tpdb"
3758+ , "tracker"
3759+ , "trajectory"
3760+ , "transactional-events"
3761+ , "transformers-convert"
3762+ , "transformers-runnable"
3763+ , "translate"
3764+ , "traypoweroff"
3765+ , "treemap-html-tools"
3766+ , "treeviz"
3767+ , "t-regex"
3768+ , "tremulous-query"
3769+ , "TrendGraph"
3770+ , "trhsx"
3771+ , "triangulation"
3772+ , "TrieMap"
3773+ , "trimpolya"
3774+ , "true-name"
3775+ , "tsession"
3776+ , "tsession-happstack"
3777+ , "tskiplist"
3778+ , "tsp-viz"
3779+ , "tuntap"
3780+ , "tup-functor"
3781+ , "tuple-gen"
3782+ , "tupleinstances"
3783+ , "tuple-lenses"
3784+ , "twentefp-eventloop-graphics"
3785+ , "twentefp-graphs"
3786+ , "twentefp-rosetree"
3787+ , "twentefp-trees"
3788+ , "twentefp-websockets"
3789+ , "twhs"
3790+ , "twidge"
3791+ , "twilight-stm"
3792+ , "twilio"
3793+ , "twill"
3794+ , "twiml"
3795+ , "twine"
3796+ , "twisty"
3797+ , "twitch"
3798+ , "twitter"
3799+ , "twitter-conduit"
3800+ , "twitter-enumerator"
3801+ , "twitter-feed"
3802+ , "twitter-types"
3803+ , "twitter-types-lens"
3804+ , "tx"
3805+ , "TYB"
3806+ , "typalyze"
3807+ , "typeable-th"
3808+ , "type-cereal"
3809+ , "TypeClass"
3810+ , "type-digits"
3811+ , "typedquery"
3812+ , "type-equality-check"
3813+ , "typehash"
3814+ , "TypeIlluminator"
3815+ , "type-int"
3816+ , "type-level"
3817+ , "type-level-bst"
3818+ , "type-level-sets"
3819+ , "typelevel-tensor"
3820+ , "type-list"
3821+ , "type-natural"
3822+ , "type-ord"
3823+ , "type-ord-spine-cereal"
3824+ , "typeparams"
3825+ , "type-prelude"
3826+ , "typescript-docs"
3827+ , "type-settheory"
3828+ , "type-spine"
3829+ , "type-structure"
3830+ , "type-sub-th"
3831+ , "typography-geometry"
3832+ , "uacpid"
3833+ , "uAgda"
3834+ , "uberlast"
3835+ , "uconv"
3836+ , "udbus"
3837+ , "udbus-model"
3838+ , "udev"
3839+ , "uhc-light"
3840+ , "uhttpc"
3841+ , "ui-command"
3842+ , "UISF"
3843+ , "UMM"
3844+ , "unamb-custom"
3845+ , "unbound"
3846+ , "unbounded-delays-units"
3847+ , "unboxed-containers"
3848+ , "unicode-names"
3849+ , "unicode-normalization"
3850+ , "unicode-properties"
3851+ , "unicoder"
3852+ , "union-map"
3853+ , "uniqueid"
3854+ , "unique-logic-tf"
3855+ , "units"
3856+ , "units-defs"
3857+ , "unittyped"
3858+ , "universe-th"
3859+ , "unix-process-conduit"
3860+ , "unlit"
3861+ , "unordered-containers-rematch"
3862+ , "unpack-funcs"
3863+ , "unsafely"
3864+ , "unscramble"
3865+ , "uploadcare"
3866+ , "upskirt"
3867+ , "ureader"
3868+ , "urembed"
3869+ , "uri-bytestring"
3870+ , "uri-conduit"
3871+ , "uri-enumerator"
3872+ , "uri-enumerator-file"
3873+ , "urlcheck"
3874+ , "urldecode"
3875+ , "UrlDisp"
3876+ , "urldisp-happstack"
3877+ , "urlencoded"
3878+ , "url-generic"
3879+ , "URLT"
3880+ , "urxml"
3881+ , "usb-enumerator"
3882+ , "usb-iteratee"
3883+ , "usb-safe"
3884+ , "uuagc-diagrams"
3885+ , "uu-options"
3886+ , "uu-tc"
3887+ , "uvector"
3888+ , "uvector-algorithms"
3889+ , "v4l2"
3890+ , "v4l2-examples"
3891+ , "vacuum"
3892+ , "vacuum-cairo"
3893+ , "vacuum-opengl"
3894+ , "vacuum-ubigraph"
3895+ , "validate"
3896+ , "validations"
3897+ , "var"
3898+ , "vaultaire-common"
3899+ , "vcard"
3900+ , "Vec-Boolean"
3901+ , "Vec-OpenGLRaw"
3902+ , "vect-floating-accelerate"
3903+ , "vector-bytestring"
3904+ , "vector-clock"
3905+ , "vector-conduit"
3906+ , "vector-fftw"
3907+ , "vector-functorlazy"
3908+ , "vector-instances-collections"
3909+ , "vector-random"
3910+ , "vector-read-instances"
3911+ , "vector-space-opengl"
3912+ , "vector-static"
3913+ , "Vec-Transform"
3914+ , "verilog"
3915+ , "vigilance"
3916+ , "vimus"
3917+ , "vintage-basic"
3918+ , "vinyl"
3919+ , "vinyl-gl"
3920+ , "vinyl-json"
3921+ , "vinyl-utils"
3922+ , "virthualenv"
3923+ , "vision"
3924+ , "visual-prof"
3925+ , "vk-aws-route53"
3926+ , "VKHS"
3927+ , "vorbiscomment"
3928+ , "vowpal-utils"
3929+ , "voyeur"
3930+ , "vtegtk3"
3931+ , "vty-examples"
3932+ , "vty-menu"
3933+ , "vty-ui-extras"
3934+ , "wai-digestive-functors"
3935+ , "wai-eventsource"
3936+ , "wai-graceful"
3937+ , "wai-handler-devel"
3938+ , "wai-handler-snap"
3939+ , "wai-handler-webkit"
3940+ , "wai-hastache"
3941+ , "wai-lite"
3942+ , "wai-logger-prefork"
3943+ , "wai-middleware-cache"
3944+ , "wai-middleware-cache-redis"
3945+ , "wai-middleware-catch"
3946+ , "wai-middleware-consul"
3947+ , "wai-middleware-etag"
3948+ , "wai-middleware-headers"
3949+ , "wai-middleware-hmac-client"
3950+ , "wai-middleware-preprocessor"
3951+ , "wai-middleware-route"
3952+ , "wai-middleware-static-caching"
3953+ , "wai-middleware-throttle"
3954+ , "wai-predicates"
3955+ , "wai-routes"
3956+ , "wai-routing"
3957+ , "wai-session"
3958+ , "wai-session-clientsession"
3959+ , "wai-session-tokyocabinet"
3960+ , "wai-throttler"
3961+ , "warp-dynamic"
3962+ , "warp-tls-uid"
3963+ , "WashNGo"
3964+ , "watchdog"
3965+ , "wavesurfer"
3966+ , "weather-api"
3967+ , "WebBits-Html"
3968+ , "WebBits-multiplate"
3969+ , "web-browser-in-haskell"
3970+ , "WebCont"
3971+ , "webcrank"
3972+ , "webcrank-wai"
3973+ , "webdriver"
3974+ , "webdriver-angular"
3975+ , "webdriver-snoy"
3976+ , "web-encodings"
3977+ , "webify"
3978+ , "webkit"
3979+ , "webkit-javascriptcore"
3980+ , "web-mongrel2"
3981+ , "web-page"
3982+ , "web-plugins"
3983+ , "Webrexp"
3984+ , "web-routes-quasi"
3985+ , "web-routes-transformers"
3986+ , "webserver"
3987+ , "websnap"
3988+ , "webwire"
3989+ , "wedged"
3990+ , "weighted-regexp"
3991+ , "welshy"
3992+ , "Wheb"
3993+ , "wheb-mongo"
3994+ , "wheb-redis"
3995+ , "wheb-strapped"
3996+ , "whim"
3997+ , "whitespace"
3998+ , "WikimediaParser"
3999+ , "wikipedia4epub"
4000+ , "Win32"
4001+ , "Win32-dhcp-server"
4002+ , "Win32-errors"
4003+ , "Win32-extras"
4004+ , "Win32-junction-point"
4005+ , "Win32-notify"
4006+ , "Win32-security"
4007+ , "Win32-services"
4008+ , "Win32-services-wrapper"
4009+ , "windowslive"
4010+ , "winerror"
4011+ , "winio"
4012+ , "WL500gPControl"
4013+ , "wl-pprint-terminfo"
4014+ , "wobsurv"
4015+ , "woffex"
4016+ , "word24"
4017+ , "wordcloud"
4018+ , "Wordlint"
4019+ , "WordNet"
4020+ , "WordNet-ghc74"
4021+ , "wordsearch"
4022+ , "Workflow"
4023+ , "wp-archivebot"
4024+ , "wraxml"
4025+ , "wreq"
4026+ , "wright"
4027+ , "wsedit"
4028+ , "wtk"
4029+ , "wtk-gtk"
4030+ , "wumpus-basic"
4031+ , "wumpus-core"
4032+ , "wumpus-drawing"
4033+ , "wumpus-microprint"
4034+ , "wumpus-tree"
4035+ , "WURFL"
4036+ , "wuss"
4037+ , "wx"
4038+ , "wxAsteroids"
4039+ , "WXDiffCtrl"
4040+ , "wxFruit"
4041+ , "WxGeneric"
4042+ , "wxhnotepad"
4043+ , "wxturtle"
4044+ , "wyvern"
4045+ , "X11-extras"
4046+ , "X11-rm"
4047+ , "X11-xdamage"
4048+ , "X11-xfixes"
4049+ , "x11-xinput"
4050+ , "xchat-plugin"
4051+ , "x-dsp"
4052+ , "Xec"
4053+ , "xfconf"
4054+ , "xhaskell-library"
4055+ , "xhb"
4056+ , "xhb-atom-cache"
4057+ , "xhb-ewmh"
4058+ , "xine"
4059+ , "xing-api"
4060+ , "XInput"
4061+ , "xkbcommon"
4062+ , "xkcd"
4063+ , "xlsior"
4064+ , "xlsx-templater"
4065+ , "xml2json"
4066+ , "xml2x"
4067+ , "xml-catalog"
4068+ , "xml-enumerator"
4069+ , "xml-enumerator-combinators"
4070+ , "XmlHtmlWriter"
4071+ , "xml-parsec"
4072+ , "xml-pipe"
4073+ , "xml-prettify"
4074+ , "xml-push"
4075+ , "xmltv"
4076+ , "XMMS"
4077+ , "xmms2-client"
4078+ , "xmms2-client-glib"
4079+ , "xmonad-bluetilebranch"
4080+ , "xmonad-contrib-bluetilebranch"
4081+ , "xmonad-eval"
4082+ , "xmonad-screenshot"
4083+ , "xmpipe"
4084+ , "XMPP"
4085+ , "xournal-builder"
4086+ , "xournal-convert"
4087+ , "xournal-parser"
4088+ , "xournal-render"
4089+ , "xournal-types"
4090+ , "xsact"
4091+ , "XSaiga"
4092+ , "xslt"
4093+ , "xtc"
4094+ , "y0l0bot"
4095+ , "Yablog"
4096+ , "yackage"
4097+ , "YACPong"
4098+ , "yahoo-finance-conduit"
4099+ , "yahoo-web-search"
4100+ , "yajl"
4101+ , "yajl-enumerator"
4102+ , "yaml2owl"
4103+ , "YamlReference"
4104+ , "yaml-rpc"
4105+ , "yaml-rpc-scotty"
4106+ , "yaml-rpc-snap"
4107+ , "yampa-canvas"
4108+ , "yampa-glfw"
4109+ , "yaop"
4110+ , "yarr"
4111+ , "yarr-image-io"
4112+ , "yavie"
4113+ , "ycextra"
4114+ , "yesod-angular-ui"
4115+ , "yesod-auth-kerberos"
4116+ , "yesod-auth-ldap"
4117+ , "yesod-auth-oauth"
4118+ , "yesod-auth-pam"
4119+ , "yesod-auth-smbclient"
4120+ , "yesod-comments"
4121+ , "yesod-continuations"
4122+ , "yesod-datatables"
4123+ , "yesod-dsl"
4124+ , "yesod-eventsource"
4125+ , "yesod-examples"
4126+ , "yesod-fay"
4127+ , "yesod-goodies"
4128+ , "yesod-links"
4129+ , "yesod-mangopay"
4130+ , "yesod-paginate"
4131+ , "yesod-pagination"
4132+ , "yesod-paginator"
4133+ , "yesod-platform"
4134+ , "yesod-pure"
4135+ , "yesod-purescript"
4136+ , "yesod-rst"
4137+ , "yesod-s3"
4138+ , "yesod-session-redis"
4139+ , "yesod-static-angular"
4140+ , "yesod-tableview"
4141+ , "yesod-test-json"
4142+ , "yesod-vend"
4143+ , "yesod-worker"
4144+ , "YFrob"
4145+ , "yhccore"
4146+ , "yi"
4147+ , "yi-contrib"
4148+ , "yi-fuzzy-open"
4149+ , "yi-gtk"
4150+ , "yi-monokai"
4151+ , "yi-snippet"
4152+ , "yi-spolsky"
4153+ , "yi-vty"
4154+ , "yjftp"
4155+ , "Yogurt"
4156+ , "Yogurt-Standalone"
4157+ , "yoko"
4158+ , "york-lava"
4159+ , "yql"
4160+ , "yst"
4161+ , "yuiGrid"
4162+ , "yuuko"
4163+ , "zampolit"
4164+ , "zasni-gerna"
4165+ , "zendesk-api"
4166+ , "zeno"
4167+ , "zeromq3-conduit"
4168+ , "zeromq3-haskell"
4169+ , "zeromq-haskell"
4170+ , "zeroth"
4171+ , "ZFS"
4172+ , "zipedit"
4173+ , "ZMachine"
4174+ , "zmcat"
4175+ , "zmqat"
4176+ , "zoneinfo"
4177+ , "zoom"
4178+ , "zoom-cache"
4179+ , "zoom-cache-pcm"
4180+ , "zoom-cache-sndfile"
4181+ , "zot"
4182+ , "zsh-battery"
4183+ , "ztail"
4184+ , "Zwaluw"
4185+ ]
4186+}