(Note: this originated as a list
I
kept
on
reposting
in response to repeated questions on /r/haskell, and more recently on the Discord FP server too.
I figured it was finally time to give it a permanant home.
I’ve also taken the opportunity to expand it out a little bit.)
Haskell has an excellent selection of GUI libraries, both for desktop and for web applications.
However, choosing between them can be difficult.
In practice I find the main differentiator to be ease of installation:
some Haskell GUI libraries are notably difficult to install, but others are much easier to get working.
They also differ strongly in look and feel, as well as in programming paradigm
(imperative vs FRP vs Elm architecture).
This article aims to list the GUI libraries available for Haskell and give an outline of their differences.