Applications and libraries/Network

From HaskellWiki
Jump to: navigation, search


Libraries and tools for various network protocols. See also Libraries and tools/Web programming for HTML specific tools.


An IRC bot implemented in Haskell, with a plugin architecture, providing many many services, including:
  • Haskell evaluation, type and kind checking
  • Type search, identifier search, library search, google and wikipedia search
  • Code refactoring
  • And more!
An IRC client in haskell
Conjure is a Haskell implementation of the bittorrent protocol
Conjure-alt is an alternative version of the above bittorrent client.
A gopher caching spider, similar in goals to the wayback machine at Written in Haskell, uses the HDBC database engine.
Ginsu is a client for the gale chat system. It is designed to be powerful and above all stable, as well as having a quick learning curve.
linkchk is a network interface link ping monitor. It supports both IPv4 and IPv6. It works by monitoring the routing table and pinging the gateway (next hop) of a network interface.
'downNova' is a program designed for automating the process of downloading TV Series from It will scan your downloaded files to find out what your interests are and download missing/new episodes to your collection. Advanced classification techniques are used to interpret the file names and 'downNova' will correctly extract series name, season number, episode number and episode title in nigh all cases.
lambdaFeed is an RSS 2.0 feed generator. It reads news items - in a non-XML, human-friendly format - distributed over multiple channels and renders them into the RSS 2.0 XML format understood by most news aggregators as well as into HTML for inclusion into web pages.


HTTP and Browser Modules
A significantly RFC compliant HTTP/1.1 client implementation. This is an updated version of Warrick Gray's original version.
Support for the HTTP/IMAP/POP3/SMTP protocols.
Alternative high speed network implementation supporting various IO strategies including epoll.
Support for SSL/TLS connections.
ldap-haskell is a Haskell binding to C-based LDAP libraries such as OpenLDAP. With ldap-haskell, you can interrogate an LDAP directory, update its entries, add data to it, etc. ldap-haskell provides an interface to all the most common operations you would need to perform with an LDAP server.
HAppS - Haskell Application Server
Monadic ACID transactions, a high performance HTTP server, an SMTP server, a DNS server, mail delivery agent, XML and XSLT, and more.
HsEmail : Parsers for the Internet Message Standard
Peter Simons' Parsec combinators for the syntax of Internet messages, such as e-mail, news articles, namely RFC2234, RFC2821, and RFC2822
Hazakura - search-based MUA
Jun Mukai's search-based mail client, written in Haskell.
Set of modules for building network servers, including a DNS example.
Another Haskell MIME Library
Haskell library for reading and writing MIME messages (aka, email)
darcs get
PiMonad: a library for pi calculus channels
A lightweight implementation of the Pi-Calculus, a process algebra with channel-passing features and a network programming framework equipped with channel-passing feature.