The haskades package
Autogeneration of bindings for creating BlackBerry Cascades apps with Haskell back ends.
./haskades HaskadesBinding.hs haskades_run.cpp < Types.hs
Where Types.hs is a Haskell file containing a record type declaration named Slots and a sum type declaration named Signals which fully specifies the communication possible between the UI layer (which you write in QML) and the Haskell backend. QML code can access these signals and slots on the app context object. Haskell code can emit signals by using the emit function exported from the generated HaskadesBinding. The emit call is threadsafe.
Text, Lazy Text, and String all end up as QString so that QML can work with them properly, and vice-versa. UTCTime becomes QDateTime. Int, Double, and () are passed through fairly directly. Other types may have support added as there is need.
[Skip to Readme]
|Versions||0.1, 0.1.1, 0.2.0, 0.2.1|
|Dependencies||base (==4.*), bytestring, containers, errors, haskell-src, text, text-format [details]|
|Copyright||© 2012 Stephen Paul Weber|
|Author||Stephen Paul Weber <firstname.lastname@example.org>|
|Maintainer||Stephen Paul Weber <email@example.com>|
|Source repository||head: git clone git://github.com/singpolyma/haskades.git|
|Uploaded||Sat Jan 12 22:28:45 UTC 2013 by StephenWeber|
|Downloads||866 total (13 in the last 30 days)|
|Status||Docs not available [build log]
Last success reported on 2016-12-22 [all 7 reports]
For package maintainers and hackage trustees