Which event-driven applications are implemented in Haskell?

event-handling, events, functional-programming, haskell, user-interface

Solution

Here's a couple of Google keywords for you:

- Functional Reactive Programming (FRP), a programming paradigm for, well reactive (aka event-driven) programming in purely functional languages,

- Leksah, a Haskell IDE written in Haskell,

- Yi, an Emacs-like editor which replaces Lisp with Haskell as the implementation, configuration, customization and scripting language,

- Super Monao Bros. (yes, you guessed it, a Jump&Run game)

- Frag (First-Person Shooter)

- Purely Functional Retrogames is a 4-part series of blog articles about how to write games in a purely functional language, explained using Pacman as the example. (Part 2, Part 3, Part 4.)

Problem

I've been looking at Haskell lately and it seems like a very nice way to watch programming problems from an alternative point of view - alternative to my usual imperative (I have a strong C++ background) view, at least. However, all the articles I see seem to deal with the same kinds of programming problems: - Parsers - Compilers - Numeric computation problems I'd like to give Haskell a try myself, by writing some GUI application. Hence, I'm wondering: does it make sense to write event-driven systems like GUIs in a functional programming language like Haskell? Or is that a problem domain at which imperative languages excel? Unfortunately it still takes quite some time for me to switch my mind to 'functional' mode, so I have a hard time deciding argueing against or in favor of using a functional programming language for an event-driven system. I'd also be interested in examples of GUI applications (or event-driven systems, in general) which are implemented in Haskell.

Original source

Related problems