[Disclaimer: Ich bin ein wxHaskell Maintainer]
Beide sind stabil und ziemlich vollständige GUI-Bindungen, und Sie könnten entweder für die meisten Projekte mit Zuversicht wählen. Beide haben ein gewisses Maß an "höheren" Haskell-Bindungen, aber in beiden Fällen müssen Sie in eine eher imperative "C" -Stil-Kodierung fallen, um die Dinge zu erledigen. Mein Eindruck ist, dass wxHaskell Ihnen erlaubt, etwas mehr Zeit in den höheren Bindings zu verbringen, aber ich habe nicht viel GTK2HS gemacht, und auf jeden Fall finden Sie auf jeden Fall am dünnen Ende des Wrappers für beide Bibliotheken - und ich denke, dass die Gesamtkomplexität der Programmierung in beiden Fällen ähnlich ist.
Deshalb nehmen wir die grundlegende Funktionalität als gegeben und konzentrieren uns auf die Unterschiede. Bitte beachten Sie, dass ich wirklich glaube, dass GTK2HS eine ausgezeichnete Arbeit ist, und dass Sie glücklich sein werden, wenn Sie es wählen. Das meiste, was ich unten sage, ist eine persönliche Interpretation der Unterschiede, und warum ich selbst und mit wxHaskell arbeite.
GTK2HS arbeitet an einem größeren Team und wird regelmäßig veröffentlicht. wxHaskell wird nicht so häufig aktualisiert, aber das Kernteam ist aktiv, und es gibt regelmäßige Bugfixes, aber mit großen neuen Funktionen, die etwas langsamer hinzugefügt werden, als wir möchten (wir haben alle Tagesjobs).
wxHaskell bietet eine echte native Anwendung Erscheinung auf allen unterstützten Plattformen out of the box. GTK2HS ist natürlich nativ auf Linux und hat ein ziemlich gutes natives Thema auf Windows (d. H. Gut genug, um alle außer Pedanten zu befriedigen ...), hat aber GTK Aussehen und Verhalten auf OSX und hängt davon ab, X11 installiert zu haben. Ich glaube, dass eine "native" GTK-Bibliothek von OSX gerade entwickelt wird, aber als relativ unreif gilt. Sobald dies stabil ist, sollte GTK2HS in der Lage sein, leicht von dem gleichen "teilweise nativen" Aussehen und Verhalten zu profitieren (z. B. GTK OSX screenshot).
wxHaskell ist wahrscheinlich ein wenig einfacher zu erstellen, wenn Sie nicht auf Linux (GTK2HS ist wahrscheinlich einfacher, wenn Sie Linux gehostet), aber beide sind ziemlich komplex zu bauen, um ehrlich zu sein, da es eine erhebliche Anzahl von Abhängigkeiten gibt in beiden Fällen.
Es ist etwas einfacher (IMHO), Anwendungen basierend auf wxHaskell zu verteilen, einfach weil es weniger Bibliotheksabhängigkeiten hat. Ich vertreibe Anwendungen hauptsächlich mit InnoSetup unter Windows und als App-Bundles unter OSX. Ich würde zugeben, dass mit nur wenigen zusätzlichen Arbeiten dasselbe mit GTK2HS getan werden könnte, was wahrscheinlich das schwächste Argument für wxHaskell ist.
Es ist meine persönliche Meinung, dass wxHaskell freundlicher zu Closed Source (z. B. kommerziellen) Entwicklungen ist. Dies ist natürlich das Thema endloser Flammenkriege, also werde ich nur sagen, dass wxHaskell unter der wxWidgets license steht, was eindeutig eine Closed-Source-Entwicklung ermöglicht. GTK2HS ist LGPL, also müssen Sie Ihren Anwalt fragen - obwohl ich deutlich machen muss, dass viele Menschen und Unternehmen zu dem Schluss gekommen sind, dass LGPL mit der kommerziellen Entwicklung vereinbar ist; Die Anwälte der Firma, für die ich arbeite, sind zu dem Schluss gekommen, dass dies für unsere Projekte nicht angemessen ist.
Ich denke, wenn Linux meine Hauptentwicklungs- und Lieferplattform wäre, würde ich wahrscheinlich GTK2HS verwenden. Es ist jedoch nicht: Ich liefere hauptsächlich mit gelegentlichen OSX zu Windows, und ich denke, wxHaskell ist eine bessere Übereinstimmung mit diesen Plattformen, obwohl beide Optionen alle drei Plattformen unterstützen.
Ich hoffe, dass dies Ihnen bei Ihrer Wahl helfen wird.