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

Versions0.1, 0.1.1, 0.2.0, 0.2.1
Change logNone available
Dependenciesbase (==4.*), bytestring, containers, errors, haskell-src, text, text-format [details]
LicenseOtherLicense
Copyright© 2012 Stephen Paul Weber
AuthorStephen Paul Weber <singpolyma@singpolyma.net>
MaintainerStephen Paul Weber <singpolyma@singpolyma.net>
Stabilityexperimental
CategoryUtility
Home pagehttp://github.com/singpolyma/haskades
Bug trackerhttp://github.com/singpolyma/haskades/issues
Source repositoryhead: git clone git://github.com/singpolyma/haskades.git
Executableshaskades
UploadedSat Jan 12 22:28:45 UTC 2013 by StephenWeber
DistributionsNixOS:0.2.1
Downloads594 total (33 in last 30 days)
Votes
0 []
StatusDocs not available [build log]
Last success reported on 2015-05-30 [all 2 reports]

Downloads

Maintainers' corner

For package maintainers and hackage trustees

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.