Here is some data on downloads of Haskell libraries and apps on Hackage, for the first half of 2010.

Hackage is the central repository of open source Haskell libraries and tools. Once they install the Haskell Platform, users get more libraries from Hackage, via “cabal install”.

Headlines

May was the most popular month for Hackage ever, breaking 150k downloads in a single month for the first time.

The 2000th Haskell package was released on April 16.

Total downloads on Hackage since 2006 have passed 2.4 million, with 780 thousand downloads in 2010 so far (double the total from the same time in 2009).

Totals

Total cabal packages: 2182. (+ 208 in Q2).

Total contributing developers: 575 (42 new developers in Q2)

90 day moving average: 12 packages per day uploaded.

Total downloads from Hackage 2007-present: 2.42 million

Average monthly downloads in 2010: 130 thousand.

Top of the Pops

The top 15 most popular libraries in the first half of 2010 were:

HTTP parsec (+1) zlib (-1) binary (+1) network (+2) utf8-string (-2) Cabal (+1) QuickCheck (-2) mtl (+1) haskell-src-exts (-1) regex-base deepseq (+6) ghc-paths (+2) hslogger (+6) regex-posix (-2)

Top 15 most popular applications in the first half of 2010:

cabal-install xmonad haddock (+1) cpphs (-1) happy darcs (+1) alex (+1) hscolour (-2) pandoc hlint leksah xmobar yi hint agda

Honorable Mentions

The Galois xml library was more popular in the first half of 2010 than HaXml, dethroning HaXml for the first time.

text has made it into the top 30 libraries

HDBC continues to be the most popular database library

vector has almost surpassed array in downloads (array is part of the Haskell Platform though)

wxHaskell is still more popular than gtk2hs on Hackage, though gtk2hs has almost caught up.

You can read all the 2010 data for your favorite packages, and ranked by 2010 popularity.

Top Libraries by Category

Networking: HTTP, network, network-bytestring, curl

HTTP, network, network-bytestring, curl Parsing: parsec, polyparse, attoparsec

parsec, polyparse, attoparsec Compression: zlib, zip-archive

zlib, zip-archive Binary formats: binary, cereal

binary, cereal Text formats: utf8-string, text, dataenc

utf8-string, text, dataenc Markup: pandoc, xhtml, tagsoup, html

pandoc, xhtml, tagsoup, html JSON: json

json Atom/RSS : feed

: feed XML: xml, HaXml, hexpat

xml, HaXml, hexpat Web services : happstack, snap

: happstack, snap GUIs : wxHaskell, gtk2hs

: wxHaskell, gtk2hs Graphics : SDL, cairo, gd

: SDL, cairo, gd Templates : HStringTemplate

: HStringTemplate Testing: QuickCheck, HUnit, testpack, hpc

QuickCheck, HUnit, testpack, hpc Control: mtl, transformers, monads-fd

mtl, transformers, monads-fd Languages: haskell-src-exts, haskell-src, ﻿HJavaScript

haskell-src-exts, haskell-src, ﻿HJavaScript Regexes: regex-{base,posix,compat,tdfa}, pcre-light

regex-{base,posix,compat,tdfa}, pcre-light Logging: hslogger

hslogger Generics: uniplate, syb-with-class, syb

uniplate, syb-with-class, syb 3D: OpenGL

OpenGL Edit history: haskeline

haskeline Concurrency and parallelism: parallel, stm

parallel, stm Databases: HDBC

HDBC Arrays : array, vector, hmatrix

: array, vector, hmatrix Hashing : pureMD5, SHA

: pureMD5, SHA Data structures : containers, fingertree, dlist

: containers, fingertree, dlist Science : statistics

: statistics Benchmarking : criterion

: criterion Storage: hs3

Is there anything else you see in the data?