Applications and libraries/Web programming

From HaskellWiki
< Applications and libraries
Revision as of 06:53, 1 April 2006 by DonStewart (talk | contribs) (+WebFunctions)

Jump to: navigation, search
The copyright status of this work is not known. Please help resolve this on the talk page.

This page contains a list of libraries and tools in a certain category. For a comprehensive list of such pages, see Applications and libraries.

Libraries and Tools for Web, HTML, and XML Programming in Haskell

HTTP and Browser Modules
A significantly RFC compliant HTTP/1.1 client implementation. This is an updated version of Warrick Gray's original version.
A family of combinator libraries for programming Web applications. WASH/HTML is for generating dynamic HTML documents, combining flexibility and safety. WASH/CGI is for server-side Web scripting with sessions, compositional forms, and graphics.
Haskell Server Pages
Using Haskell as a server-side scripting language, extended to allow embedded XML/XHTML fragments in Haskell code.
HASP is a fork of Niklas Broberg?s Haskell Server Pages. Changes includes:
  • support for all GHC extensions
  • front-end based on FastCGI instead of its own web server
  • minor bug fixes and performance tuning.
Generative Implementation Strategies for Data-Centric Web Applications
Generic presentation layer abstractions of administrative web applications are the central theme of this thesis. The domain-engineering approach results in a framework to support user interfaces generated from high-level descriptions. A domain-specific language describes user interfaces. The [ Haskell-based generator] transforms these descriptions to user interfaces implemented with JavaScript and XHTML.
WebFunctions is a EDSL for developing websites, implemented in Haskell. WebFunctions is a domain

specific embedded language for web authoring.


HaXml: utilities for using XML with Haskell
Includes an XML parser, an HTML parser, a pretty-printer, a combinator library for generic XML transformations, and two Haskell>-<XML converters using type-based translation.
Haskell XML Toolbox
The Haskell XML Toolbox bases on the ideas of HaXml and HXML, but introduces a more general approach for processing XML with Haskell. The Haskell XML Toolbox uses a generic data model for representing XML documents, including the DTD subset and the document subset, in Haskell.
Xtract is a `grep'-like command-line tool for searching XML and HTML documents.


The Haskell Html Library by Andy Gill
This library is a collection of combinators, allowing your Haskell programs to generate HTML. It is available in the standard libraries as Text.Html.
XHtml library
This is a version of Text.Html, modified to produce XHTML 1.0 Transitional.


Haskell binding for CGI. Original Version by Erik Meijer. Further hacked on by Sven Panne. Further hacking by Andy Gill.
A new library for writing CGI programs. Features include:
  • Access to CGI parameters (e.g. form input) from both GET and POST requests.
  • Access to CGI environment variables.
  • Ability to set arbitrary response headers.
  • Support for HTTP cookies.
  • Efficient file upload support.
  • Wrapper functions for compatibility with the existing Network.CGI module.
FastCGI library
A library for using NewCGI programs with FastCGI.


HaXR - the Haskell XML-RPC library
An XML-RPC client and server library. XML-RPC is "remote procedure calling using HTTP as the transport and XML as the encoding. XML-RPC is designed to be as simple as possible, while allowing complex data structures to be transmitted, processed and returned."
HAIFA is an implementation of parts of the web-service architecture in Haskell. Notably it includes an XML serializer, a partial implementation of XML Schema and SOAP/1.1.
This package allows Haskell programmers to write CORBA clients and servers using the MICO open-source CORBA implementation. It defines a Haskell language mapping for CORBA, and includes an IDL compiler which generates Haskell stub and skeleton modules from IDL files.