From HaskellWiki

1 GUI programming

This page contains notes and information about how to get the various GUI packages available for GHC up and running on different platforms, and some basic usage information to get you going.

Please feel free to add stuff here (Edit page link at the bottom).

1.1 Starting points

wxHaskell. wxHaskell is a GHC binding to the wxWidgets cross-platform GUI library. One of the key benefits of wxWidgets is that it provides code portability with a 'native' look and feel on Unix, Windows and Mac platforms. See wxHaskell home page on Sourceforge. There is also a wxHaskell page on this wiki. License allows free use of the libraries in open or closed source software (wxWidgets license).

HOC. HOC is a GHC binding to the Mac OSX Cocoa APIs for GHC. The key benefits are the ability to interface with most Cocoa frameworks, and to use GUIs constructed using Interface Builder. See HOC homepage on Sourceforge. BSD licensed.

Gtk2Hs. Gtk2Hs is a GHC binding to the Gtk+ portable GUI library. At the time of writing it is probably the most complete and well-supported GUI option for GHC. It provides some degree of native look and feel on Windows but not on Mac yet. See Gtk2Hs homepage. LGPL licensed.