[Haskell-cafe] Poll & plea: State of GUI & graphics libraries in Haskell

Oliver Charles ollie at ocharles.org.uk
Fri Sep 27 11:35:12 CEST 2013

On 09/27/2013 04:32 AM, Conal Elliott wrote:
> I'm polling to see whether there are will and expertise to reboot
> graphics and GUIs work in Haskell. I miss working on functional graphics
> and GUIs in Haskell, as I've been blocked for several years (eight?) due
> to the absence of low-level foundation libraries having the following
> properties:
> * cross-platform,
> * easily buildable,
> * GHCi-friendly, and
> * OpenGL-compatible.
> The last several times I tried Gtk2hs, I was unable to compile it on my
> Mac. Years ago when I was able to compile, the GUIs looked and
> interacted like a Linux app, which made them awkward and upleasant to
> use. wxHaskell (whose API and visual appearance I prefered) has for
> years been incompatible with GHCi, in that the second time I open a
> top-level window, the host process (GHCi) dies abruptly. Since my GUI &
> graphics programs are often one-liners, and I tend to experiment a lot,
> using a full compilation greatly thwarts my flow. For many years, I've
> thought that the situation would eventually improve, since I'm far from
> the only person who wants GUIs or graphics from Haskell.

We are working on bindings to SDL 2 at the moment -
https://github.com/Lemmih/hsSDL2. They are currently usable for most
'stock' work - drawing things, doing interaction, window management,
etc. However, I'm afraid SDL bindings don't really solve what you want
in terms of a GUI programming.

SDL2 at least gives you a sane cross platform way to create a window
with an OpenGL context, and to draw things using hardware acceleration.
If you actually need widgets, then SDL probably won't help here.

- ocharles

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 490 bytes
Desc: OpenPGP digital signature
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20130927/11ffb122/attachment.pgp>

More information about the Haskell-Cafe mailing list