The reactive-banana package

[Tags: bsd3, functional-reactive-programming, library]

Reactive-banana is a library for Functional Reactive Programming (FRP).

FRP offers an elegant and concise way to express interactive programs such as graphical user interfaces, animations, computer music or robot controllers. It promises to avoid the spaghetti code that is all too common in traditional approaches to GUI programming.

See the project homepage http://haskell.org/haskellwiki/Reactive-banana for more detailed documentation and examples.

Stability forecast:

No semantic bugs expected.

Significant API changes are likely in future versions, though the main interface is beginning to stabilize.

The library features an efficient, push-driven implementation and has seen some optimization work. However, the inner loop still has a rather large constant factor overhead. Moreover, there is currently no garbage collection for events that are created dynamically with Reactive.Banana.Switch.


Properties

Versions0.1.0.0, 0.1.0.2, 0.2.0.0, 0.2.0.1, 0.2.0.2, 0.2.0.3, 0.3.0.0, 0.3.0.1, 0.4.0.0, 0.4.1.0, 0.4.1.1, 0.4.2.0, 0.4.3.0, 0.4.3.1, 0.4.3.2, 0.5.0.0, 0.5.0.1, 0.5.0.2, 0.5.0.3, 0.6.0.0, 0.7.0.0, 0.7.0.1, 0.7.1.0, 0.7.1.1, 0.7.1.2, 0.7.1.3, 0.8.0.0, 0.8.0.1, 0.8.0.2
Dependenciesbase (>=4.2 && <5), containers (>=0.3 && <0.6), hashable (>=1.1 && <1.3), pqueue (>=1.0 && <1.3), transformers (>=0.2 && <0.5), unordered-containers (>=0.2.1.0 && <0.3), vault (==0.3.*)
LicenseBSD3
AuthorHeinrich Apfelmus
MaintainerHeinrich Apfelmus <apfelmus quantentunnel de>
CategoryFRP
Home pagehttp://haskell.org/haskellwiki/Reactive-banana
Source repositoryhead: git clone git://github.com/HeinrichApfelmus/reactive-banana.git(reactive-banana/)
Upload dateSat May 17 10:28:37 UTC 2014
Uploaded byHeinrichApfelmus
DistributionsDebian:0.7.1.3, NixOS:0.8.0.2
Downloads3266 total (318 in last 30 days)

Modules

[Index]

Flags

NameDescriptionDefault
useextensionsUse GHC-specific language extensions. This enables the efficient push-driven implementation, but doesn't necessarily work with compilers other than GHC.Enabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainers' corner

For package maintainers and hackage trustees