reflex: Higher-order Functional Reactive Programming

[ bsd3, frp, library ] [ Propose Tags ]

Reflex is a high-performance, deterministic, higher-order Functional Reactive Programming system


[Skip to Readme]

Flags

Manual Flags

NameDescriptionDefault
use-reflex-optimizer

Use the GHC plugin Reflex.Optimizer on some of the modules in the package. This is still experimental.

Disabled
use-template-haskell

Use template haskell to generate lenses

Enabled
debug-trace-events

Add instrumentation that outputs the stack trace of the definition of an event whenever it is subscribed to. Warning: It is very slow!

Disabled
fast-weak

Use the primitive implementation of FastWeak in GHCJS; note that this requires GHCJS to be built with FastWeak and FastWeakBag present in the RTS, which is not the default

Disabled
Automatic Flags
NameDescriptionDefault
split-these

Use split these/semialign packages

Enabled

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

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.0.1, 0.1.0, 0.1.1, 0.2, 0.3, 0.3.1, 0.3.2, 0.4.0, 0.4.0.1, 0.5, 0.5.0.1, 0.6, 0.6.1, 0.6.2.1, 0.6.2.3, 0.6.2.4, 0.6.3, 0.6.4, 0.6.4.1, 0.7.0.0, 0.7.1.0, 0.7.1.1, 0.7.2.0, 0.8.0.0, 0.8.1.0, 0.8.1.1, 0.8.2.0, 0.8.2.1, 0.8.2.2, 0.9.0.0, 0.9.0.1, 0.9.1.0, 0.9.2.0, 0.9.3.0, 0.9.3.1 (info)
Change log ChangeLog.md
Dependencies base (>=4.9 && <4.13), bifunctors (>=5.2 && <5.6), comonad (>=5.0.4 && <5.1), constraints-extras (>=0.3 && <0.4), containers (>=0.6 && <0.7), data-default (>=0.5 && <0.8), dependent-map (>=0.3 && <0.4), dependent-sum (>=0.6 && <0.7), exception-transformers (>=0.4 && <0.5), ghcjs-base, haskell-src-exts (>=1.16 && <1.22), haskell-src-meta (>=0.6 && <0.9), lens (>=4.7 && <5), MemoTrie (>=0.6 && <0.7), monad-control (>=1.0.1 && <1.1), monoidal-containers (==0.4.0.0 || >=0.6 && <0.7), mtl (>=2.1 && <2.3), prim-uniq (>=0.1.0.1 && <0.2), primitive (>=0.5 && <0.8), profunctors (>=5.3 && <5.5), random (>=1.1 && <1.2), ref-tf (>=0.4 && <0.5), reflection (>=2.1 && <2.2), semialign (>=1 && <1.2), semigroupoids (>=4.0 && <6), stm (>=2.4 && <2.6), syb (>=0.5 && <0.8), template-haskell (>=2.9 && <2.15), these (>=0.4 && <0.9 || >=1 && <1.1), time (>=1.4 && <1.9), transformers (>=0.5.6.0 && <0.6), unbounded-delays (>=0.1.0.0 && <0.2), witherable (>=0.3 && <0.3.2) [details]
License BSD-3-Clause
Author Ryan Trinkle
Maintainer ryan.trinkle@gmail.com
Category FRP
Home page https://reflex-frp.org
Bug tracker https://github.com/reflex-frp/reflex/issues
Source repo head: git clone https://github.com/reflex-frp/reflex
Uploaded by JohnEricson at 2019-12-20T23:45:37Z
Distributions NixOS:0.9.3.0
Reverse Dependencies 44 direct, 3 indirect [details]
Downloads 20221 total (189 in the last 30 days)
Rating 2.75 (votes: 13) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2019-12-21 [all 1 reports]

Readme for reflex-0.6.3

[back to package description]

Reflex

Hackage

Practical Functional Reactive Programming

Reflex is a fully-deterministic, higher-order Functional Reactive Programming (FRP) interface and an engine that efficiently implements that interface.

Reflex-DOM is a framework built on Reflex that facilitates the development of web pages, including highly-interactive single-page apps.

A summary of Reflex functions is available in the quick reference.

Visit https://reflex-frp.org/ for more information, tutorials, documentation and examples.

Resources

Get started with Reflex

/r/reflexfrp

irc.freenode.net #reflex-frp

Hacking

Use the ./scripts/hack-on reflex script in Reflex Platform to checkout the source code of reflex locally in reflex-platform/reflex directory. Then do modifications to the source in place, and use the ./try-reflex or ./scripts/work-on scripts to create the shell to test your changes.