The DeepArrow package
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.
Properties
| Versions | 0.0, 0.0.1, 0.2, 0.3.2, 0.3.3, 0.3.4, 0.3.5, 0.3.7 |
|---|---|
| Dependencies | base (<5), haskell-src, mtl, TypeCompose (≥0.9.5) |
| License | BSD3 |
| Copyright | (c) 2007-2012 by Conal Elliott |
| Author | Conal Elliott <conal@conal.net> |
| Maintainer | conal@conal.net |
| Stability | experimental |
| Category | Combinators, Control |
| Home page | http://haskell.org/haskellwiki/DeepArrow |
| Source repository | git clone git://github.com/conal/DeepArrow.git |
| Upload date | Fri Oct 5 18:15:18 UTC 2012 |
| Uploaded by | ConalElliott |
| Build failure | ghc-7.6 (log) |
| Distributions | FreeBSD: 0.3.7 |
Modules
- Control
- Arrow
- Control.Arrow.DeepArrow
- Control.Arrow.DeepArrow.Examples
- Control.Arrow.DeepArrow
- Arrow
- Data
- Data.DDeepArrow
- Data.FunArr
- Language
- Haskell
- Language.Haskell.Parens
- Language.Haskell.ToHs
- Haskell
Downloads
- DeepArrow-0.3.7.tar.gz (Cabal source package)
- package description (included in the package)