Haskell Blog

FRP - Release of reactive-banana version 0.6

Tue, 15 May 2012 17:33:41 +0200

I have released version 0.6.0.0 of my reactive-banana library on hackage.

Compared to the previous release, the public API is essentially unchanged, except that I have renamed the module Reactive.Banana.Experimental.Model to Reactive.Banana.Model again, hence the major change in the version number.

Moreover, this release now works with the latest versions (0.13 and 0.90) of the wxHaskell library. Make sure that you install the latest patch release of wx, wxcore and wc if applicable, as they resolve a few problems with wxWidgets 2.9.3.

The major change introduced in this release is that the library can now be compiled with the Utrecht Haskell Compiler, in particular the JavaScript backend. It was Mathijs Kwik who suggested this feature to me. In other words, you can now use functional reactive programming with Haskell in the web browser! Well, if you manage to get UHC up and running, that is. The infrastructure still needs some work compared to GHC. But hey, if you want to program browser-based user interfaces with Haskell, my bananas are loaded and ready.

The main problem was that UHC doesn’t support all the language extensions that I needed for my efficient push-driven implementation. To solve this, I have introduced a new flag UseExtensions in the .cabal file. It is on by default, but will (hopefully) be disabled automatically if the compiler doesn’t support extensions like GADTs or TypeFamilies. (You can also disable it by hand.) The implementation will then fall back to the less efficient model implementation.

Many thanks to all users for suggesting and discussing changes with me, especially Mathijs Kwik and Henning Thielemann. Special thanks to Jeremy O’Donoghue for his work on wxHaskell.

Howdy, cowboy, it’s advertisment time! If you like the reactive-banana project, you can support me with a small donation: Flattr this!. Furthermore, at the end of every month, all ardent supporters will receive ¢2 worth of status information and fruity puns! (This magnificent offer can be respectfully declined in your Flattr preferences.)

PS: What happened to dynamic event switching? Well, I can tell you that the next version of reactive-banana, 0.7.0.0, will definitely include dynamic event switching and it will likely work with UHC as well!

Some HTML formatting is allowed in comments.
blog comments powered by Disqus