The buster package
Buster is best described by the following blog post: http://vis.renci.org/jeff/2009/03/31/almost-but-not-quite-entirely-like-frp/
It is an engine for orchestrating large, complex, and multifaceted applications by couching them in terms of time, events, a bus, behaviours, and widgets. Time is continuous and infininte. Events are discrete and exist for a particular time. The bus is a discrete sample of time made available to behaviours. Behaviours are continuous and exist for all time, but sample time via the bus. They filter Events to determine what is on the bus at future times. Widgets are input-only objects that sample the outside world and assign events to discrete portions of time.
Buster is designed to be flexible, with a flexible event model and the ability to add custom data to events, and designed to be high performance. It is simple to integrate with Gtk while at the same time able to handle other kinds of resources, like files and sockets.
|Versions||0.99.1, 0.99.2, 0.99.5, 0.99.6, 0.99.7, 1.0, 1.1, 1.2, 2.0, 2.2, 2.5, 2.21, 2.51|
|Dependencies||base, binary, bytestring, containers, gtk, HTTP (>=4000.0), mtl, network, old-locale, parsec (>=3.0.0), pretty, time [details]|
|Copyright||2009 Renaissance Computing Institute|
|Maintainer||Jeff Heard <firstname.lastname@example.org>|
|Uploaded||Mon Apr 6 20:43:09 UTC 2009 by JeffersonHeard|
|Downloads||2561 total (32 in the last 30 days)|
|Status||Docs not available [build log]
All reported builds failed as of 2015-12-10 [all 7 reports]
For package maintainers and hackage trustees