Applications and libraries/Web programming

From HaskellWiki
< Applications and libraries
Revision as of 08:05, 1 April 2006 by EndreyMark (talk | contribs) (Adding EdComb also to Libraries and tools/Web programming, because this editor combinator library (primarily mentioned at Libraries and tools/Editors can be used also for building browsers)

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.
Another combinator library -- for editors! But a very fruitfully general approach to the concept of editor is presented. Therefore, these editor combinators can be used also e.g. as browser combinators, with interesting new possibilities for browsers.
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.