A library for discrete functional reactive programming with a focus on referential transparency.
In order to build the library, sbt version 0.13.0 or above is needed. In order
to create a single executable .jar file, use the
oneJar command. As
multiple main classes are detected you will be asked to choose one.
The executable can then be found under
The example subproject contains an ever growing list of simple examples and use
cases for functional reactive programming. Each of the examples extends
scalaz.effect.SafeApp and overrides the
runc method of type
Run any of the examples from the sbt prompt like so:
$ sbt > project dire-example > run Multiple main classes detected, select one to run:  dire.example.TimeExample  dire.example.ButtonApp  dire.example.UserBob  dire.example.ButtonGroup  dire.example.Looping  dire.example.HelloWorld  dire.example.FormattedIntegers  dire.example.TextFieldsValidated  dire.example.TextFields  dire.example.Drawing  dire.example.Animation  dire.example.URLReaderExample Enter number:
Please note that some examples like HelloWorld will not run
properly from within sbt. In that case use the
to create an executable as described under Building dire.
A blog about the concepts found and the progress made in dire can be found here:
The development of dire is strongly influenced by the following articles and projects:
Deprecating the Observer Pattern by I. Maier and M. Odersky:
The reactive project by N. Gugenheim:
H. Apfelmus's blog: