[Haskell-cafe] Haskell GUI on top of Xlib?

Duncan Coutts duncan.coutts at worc.ox.ac.uk
Sat Nov 26 06:08:00 EST 2005


On Sat, 2005-11-26 at 00:17 -0500, Dimitry Golubovsky wrote:
> Do there exist Haskell graphics/UI toolkits implemented on top of the 
> X11 library (Xlib) without any intermediate C/C++ libraries (i. e. not 
> WxHaskell for example)?
> 
> I have a very low level client-side interface to the X11 protocol 
> implemented in pure Haskell (layout of protocol packets obtained from 
> Xlib header files preprocessed by HSFFIG). As of now, I can open a 
> display, build request packets manually and parse server responses (some 
> of, but this is just a matter of writing more parsers), so this is more 
> like a toolset for X11 protocol packets manipulations. I do not intend 
> to implement a full analog of Xlib in Haskell. Instead, it might be 
> interesting to create a "fully functional" GUI toolkit based on some 
> already existing high-level interface.
> 
> Any ideas will be appreciated.

Are you aware of the XCB library:
http://xcb.freedesktop.org/

It's a more modern client side X11 library. In particular they have a
good infrastructure for describing the X11 protocol packets using XML.
They use that to generate code in various languages for dealing with
those packets.

XCB is supposed to be simpler and more regular than Xlib and with less
historical cruft. It is also supposed to support multiple threads
properly (which is nearly impossible with Xlib).

Indeed they mention that Haskell would be an obvious target for this:

http://xcb.freedesktop.org/wiki/XCBToDo
(see bottom of that page: "XCB for other languages")

Duncan



More information about the Haskell-Cafe mailing list