DeepArrow-0.3.7: Arrows for "deep application"
This library provides a framework for type-directed composition of value
editors (non-syntactic transformations). The tools enable "deep function
application" in two senses: deep application of functions and
application of deep functions. These tools generalize beyond values and
functions, via the DeepArrow
subclass of the Arrow
type class.
For more information see:
- The project wiki page http://haskell.org/haskellwiki/DeepArrow
- Application of deep arrows for composable interfaces in the TV library: http://haskell.org/haskellwiki/TV
- The motivating idea and paper Tangible Functional Programming: http://conal.net/papers/Eros
The primary module is Control.Arrow.DeepArrow. Examples in Control.Arrow.DeepArrow.Examples.
Note: Many of the type signatures use infix type operators (as in
a~>b
). In reading the documentation and code, be aware that infix
operators bind more tightly than ->
.
© 2007-2012 by Conal Elliott (http://conal.net); BSD3 license.
Modules
- Control
- Data
- Language