WikiDer > WxHaskell
wxHaskell | ||||
| Betriebssystem | Plattformübergreifend | |||
| Kategorie | Widget-Toolkit | |||
| Lizenz | Lizenz von wxWidgets | |||
| Webseite | https://wiki.haskell.org/WxHaskell | |||
| ||||
wxHaskell ist ein GUIBibliothek für die funktionale ProgrammierspracheHaskell. Es ist ein Bibliothek vor dem wxWidgets, eine Bibliothek geschrieben in C die auf allen möglichen Computerplattformen, wie Fenster, GTK und Mac OS X, kann verwendet werden. wxHaskell wird hauptsächlich von Daan Leijen entwickelt und gestaltet.
Überblick
Die Software besteht aus vier Teilen:
wxdirekt, ein Programm, das speziell geschriebene C-Header liest und Haskell-FFI-Bindungen auf niedriger Ebene für die exportierten Funktionen schreibtwxc, eine DLL mit C-Schnittstelle zu wxWidgets (Haskell-Compiler können keine Verbindung zu C-Software herstellen). Wxc kann auch für Bindungen mit anderen Sprachen verwendet werden- Modul
Graphics.UI.WXCore, das Schnittstelle zwischen Haskell und wxc - Modul
Graphics.UI.WX, ein Abstraktion obendrein. DasWXCore-Bibliothek bietet einige Abstraktionen, aber keine Dinge wie Überlastung oder neu Monaden. DasWXBibliothek bietet diese Art von Dingen zum Festlegen von Eigenschaften und Attributen von Teilen der Schnittstelle
wxHaskell verwendet Combiner, um das Layout anzugeben. Diese Kombinatoren können verwendet werden, um die Eigenschaften der Widgets (Ausrichtung, Erweiterung und strecken) konfigurieren.
Lizenz
wxHaskell ist unter derselben Lizenz verfügbar wie wxWidgets. Diese Lizenz ist fast identisch mit der GNU Lesser General Public License, mit einer Änderung: Werke, die mit dieser Bibliothek erstellt wurden, können zu ihren eigenen Bedingungen veröffentlicht werden. Dadurch ist es auch möglich, kommerzielle Anwendungen zu erstellen, ohne z Quellcode freigeben zu müssen.
Beispiel
Der folgende Code zeigt ein kleines Fenster mit dem Titel "Hallo!" und eine Arbeitstaste zum Beenden:
ModulMainwoimportierenGraphics.UI.WXMain::IO()Main=StartHalloHallo::IO()Hallo=tunf<-Rahmen[Text:="Hallo!"]Verlassen<-Tastef[Text:="Verlassen",aufBefehl:=schließenf]einstellenf[Layout:=WidgetVerlassen]Externe Links
- (und) Das wxHaskell-Projekt im Haskell-Wiki
- (und) wxHaskell - Eine tragbare und übersichtliche GUI-Bibliothek für Haskell, Daan Leijen
- (und) WX-Dokumentation - Übersicht aller Module und Funktionen im WX-Modul
- (und) WXCore-Dokumentation - Übersicht aller Module und Funktionen im WXCore-Modul