1 Missing libraries (by problem domain)

1.1 IMAP

A functional IMAP library would be nice, particularly one that can be used in conjunction with encryption and authentication. References have been found to a SoC project although it appears to be derelict.

1.2 Numerical algorithms

Stuff to compute bessel functions, struve H1 etc.

1.3 AMQP Client

It will be great to have a client for the open source protocol AMQ (http://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol). This is a new transport protocol, solving problems currently addressed by Java Messaging Service, MQ, Tibco RV, etc. Financial companies such infrastructure to distribute massive amounts of market data (although the protocol can be used for effeciently distributing anything)

1.4 STOMP Client

The Streaming Text Orientated Messaging Protocol (http://stomp.codehaus.org/) is a messaging protocol supported by a good number of languages and message brokers. While not high-performance like AMQP it is apparently near trivial to implement and interact with.

1.5 Darcs Bindings

Many darcs users have requested an interface to darcs as a C library. Creating this library would involve deciding on the details of the API and generating the bindings using the Haskell FFI. Designing the API is mostly done for you by following the structure of the darcs source code and how the existing commands interface with the core of darcs.

1.6 OpenID Relying Party (Consumer) library

A library allowing (web) applications to authenticate users with an OpenID would be great. WikiPedia has a good description of what is expected from the relying party.

2 Could be improved

Problems with existing solutions, that could be improved.

Harpy lacks support for x86-64 - supporting both x86 and x86-64 would be a boon.

The core HTTP libraries need a lot of work. There is the beginnings of a useful library there, but many http codes are not handled, and there should be simple 'get' and 'head' functionality. Also there should be common data structures for HTTP Response and Request, that are shared between HTTP servers (HWS and offsprings) and HTTP clients.

Binary serialisation support should be ported to bytestring, and added to the extralibs bundle