wizards-1.0: High level, generic library for interrogative user interfaces

The wizards package

wizards is a package designed for the quick and painless development of interrogative programs, which revolve around a "dialogue" with the user, who is asked a series of questions in a sequence much like an installation wizard.

Everything from interactive system scripts, to installation wizards, to full-blown shells can be implemented with the support of wizards.

It is developed transparently on top of a free monad, which separates out the semantics of the program from any particular interface. A variety of backends exist, including console-based System.Console.Wizard.Haskeline and System.Console.Wizard.BasicIO, and the pure System.Console.Wizard.Pure. It is also possible to write your own backends, or extend existing back-ends with new features. While both built-in IO backends operate on a console, there is no reason why wizards cannot also be used for making GUI wizard interfaces.

See the github page for examples on usage:

http://www.github.com/liamoc/wizards

For creating backends, the module System.Console.Wizard.Internal has a brief tutorial.

Properties

Versions0.1, 1.0, 1.0.1
Dependenciesbase (4.*), containers (0.4.*), control-monad-free (0.5.*), haskeline (0.6.*), mtl (2.0.*), transformers (0.2.*)
LicenseBSD3
AuthorLiam O'Connor-Davis
Maintainerliamoc@cse.unsw.edu.au
CategoryUser Interfaces
Source repositorygit clone git://github.com/liamoc/wizards.git
Upload dateSat Jun 30 20:02:24 UTC 2012
Uploaded byLiamOConnorDavis
Built onghc-7.4

Modules

Downloads