WxHaskell

wxHaskell
Ontwerp en ontwikkeling
Categorie Widget toolkit
Ontwerper(s) Daan Leijen
Ontwikkelaar(s) Daan Leijen
Besturings­systeem Cross-platform
Geschreven in C++Bewerken op Wikidata
Onderdelen
Licentie(s) Licentie van wxWidgets
Links
Website (en) Projectpagina
Portaal  Portaalicoon   Informatica
Vrije software

De GUI-bibliotheek wxHaskell wordt gebruikt voor de functionele programmeertaal Haskell. Het is een bibliotheek voor wxWidgets, een bibliotheek geschreven in C++, die op allerlei computerplatformen, zoals Windows, GTK+ en Mac OS X, gebruikt kan worden. De taal wxHaskell is hoofdzakelijk ontwikkeld en ontworpen door Daan Leijen.

Overzicht

De software bestaat uit vier delen:

WxHaskell maakt gebruik van combinatoren voor het specificeren van de lay-out. Deze combinatoren kunnen gebruikt worden om de eigenschappen van de widgets (alignment, expansion en stretch) in te stellen.

Licentie

WxHaskell is beschikbaar onder dezelfde licentie als wxWidgets. Deze licentie is bijna identiek aan de GNU Lesser General Public License, met één wijziging: werken die met deze bibliotheek zijn gemaakt, kunnen worden uitgebracht onder eigen voorwaarden. Hiermee is het ook mogelijk commerciële applicaties te maken zonder bijvoorbeeld de broncode vrij te hoeven geven.

Voorbeeld

De onderstaande code toont een klein venster met de titel "Hello!" en een werkende knop om af te sluiten:

module Main where
import Graphics.UI.WX

main :: IO ()
main
  = start hello

hello :: IO ()
hello
  = do f    <- frame    [text := "Hello!"]
       quit <- button f [text := "Quit", on command := close f]
       set f [layout := widget quit]
Wikibooks heeft een Engelstalig boek over dit onderwerp: Haskell/GUI.