Difference between revisions of "WxHaskell"
(clickable old darcs repo is misleading. Made "un-clickable".) |
|||
Line 45: | Line 45: | ||
** [[/MacOS X/]] |
** [[/MacOS X/]] |
||
*[[/Development/]] |
*[[/Development/]] |
||
+ | ** [[/Development/Environment |Working on wxHaskell]] |
||
*[[/Contribute/]] |
*[[/Contribute/]] |
||
Revision as of 22:49, 14 September 2011
What is it?
wxHaskell is a portable and native GUI library for Haskell. The goal of the project is to provide an industrial strength GUI library for Haskell, but without the burden of developing (and maintaining) one ourselves.
wxHaskell is therefore built on top of wxWidgets – a comprehensive C++ library that is portable across all major GUI platforms; including GTK, Windows, X11, and MacOS X. Furthermore, it is a mature library (in development since 1992) that supports a wide range of widgets with the native look-and-feel, and it has a very active community (ranked among the top 25 most active projects on sourceforge).
Status
The core interface of wxHaskell was originally derived from the wxEiffel binding. Work on this has been dormant for several years, but the wxHaskell maintainers now support updates to the wxWidgets API themselves - we generally respond to new releases of wxWidgets within a few weeks at most.
The wrapping is, unfortunately, generated by hand, so there is some (mainly tedious boilerplate) work involved in porting a new set of widgets to wxHaskell. Some work has been done into automating this aspect, but we are far from being able to replicate the approach reliably over then entire API as yet.
From the perspective of the user (rather than the developer) about 90% of the core wxWidgets functionality is already supported, excluding more "exotic" widgets like dockable windows. The library supports Windows, GTK (Linux) and MacOS X.
News
- 13 October 2009
- wxHaskell 0.12.1.2 is released. Since the previous new we have added support for XRC files (XML GUI design) and installation by Cabal
- 4 January 2009
- wxHaskell 0.11.0 is released. See the announcement (indicates rev. 0.11.1, SourceForge has rev. 0.11.0)
- 8 August 2008
- Switched official darcs repository to code.haskell.org (
darcs get --partial http://code.haskell.org/wxhaskell
). You can use previous darcs.haskell.org's darcs repository, too. - 5 August 2008
- Homepage (except for screenshots) now moved to Haskell wiki
- 23 March 2008
- wxHaskell 0.10.3 is released.
- 20 January 2007
- wxHaskell has a new set of maintainers, led by Jeremy O'Donoghue. We are working on a release for version 0.10, with Unicode support, a Cabalized build process and more. All recent development is taking place under a new darcs repository (
darcs get http://darcs.haskell.org/wxhaskell/
).
Documentation
- Screenshots
- Samples ( the links to the source code on that page are broken, but you can see the sources here )
- Applications
- Using wxHaskell
- Download
- Building and installing
- Development
- Contribute
Resources
- Bugtracker
- The developer mailing list (wxhaskell-devel) (archive)
- The wxHaskell users mailing list (wxhaskell-users) (archive)
External links
- Daan Leijen: wxHaskell / A Portable and Concise GUI Library for Haskell (pdf)
- Wei Tan: GUI programming with wxHaskell (pdf)
- Assignment 1 part of the course Advanced Functional Programming, by Koen Lindström Claessen and Björn Bringert, a portal like page (html)
- Blog articles about wxHaskell
- Sander Evers, Peter Achten, and Jan Kuper: A Functional Programming Technique for Forms in GUI (PDF)
- FunctionalForms, a combinator library/domain specific language for wxHaskell which enables a very concise programming style for forms (not maintained since 2005)
See also
- An example of how to implement a basic notepad with wxHaskell
- The Haskell wikibook GUI chapter
- WxGeneric
- wxFruit
- Can GUI Programming Be Liberated From The IO Monad
- Phooey: a purely functional layer on top of wxHaskell
- GuiTV: GUI-based tangible values & composable interfaces, on TV, Phooey and wxHaskell.
- wxAsteroids: a game demonstrating wxHaskell.
- GeBoP: the General Boardgames Player, offers a set of board games: Ataxx, Bamp, Halma, Hez, Kram, Nim, Reversi, TicTacToe, and Zenix.
- Haskell-BlackBoard: a drawing application for making slideshows and videos, based on wxHaskell and Functional Reactive Programming
- reactive-banana - FRP library with bindings to wxHaskell.