The haskades package

[Tags:program]

Autogeneration of bindings for creating BlackBerry Cascades apps with Haskell back ends.

Run as:

 ./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]

Properties

Versions 0.1, 0.1.1, 0.2.0, 0.2.1
Dependencies base (==4.*), bytestring, containers, errors, haskell-src, text, text-format [details]
License OtherLicense
Copyright © 2012 Stephen Paul Weber
Author Stephen Paul Weber <singpolyma@singpolyma.net>
Maintainer Stephen Paul Weber <singpolyma@singpolyma.net>
Stability experimental
Category Utility
Home page http://github.com/singpolyma/haskades
Bug tracker http://github.com/singpolyma/haskades/issues
Source repository head: git clone git://github.com/singpolyma/haskades.git
Uploaded Sat Jan 12 22:28:45 UTC 2013 by StephenWeber
Distributions NixOS:0.2.1
Downloads 777 total (14 in the last 30 days)
Votes
0 []
Status Docs not available [build log]
Last success reported on 2015-11-20 [all 5 reports]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Readme for haskades

Readme for haskades-0.1

Autogeneration of bindings for creating BlackBerry Cascades apps
with Haskell back ends.

Run as:

> ./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.