between: Function combinator "between" and derived combinators
It turns out that this combinator
f ~@~ g = (f .) . (. g)
is a powerful thing. It was abstracted from following (commonly used)
pattern f . h . g where f and g are fixed.
This library not only defines ~@~ combinator, but also some derived
combinators that can help us easily define a lot of things including
lenses. See lens package for
detais on what lenses are.
Function Data.Function.on can be implemented using ~@~ as:
on :: (b -> b -> c) -> (a -> b) -> a -> a -> c on f g = (id ~@~ g ~@~ g) f
If function on3 existed in base then it could be defined as:
on3 :: (b -> b -> b -> d) -> (a -> b) -> a -> a -> a -> d on3 f g = (id ~@~ g ~@~ g ~@~ g) f
Other usage examples and documentation can be found in Data.Function.Between module.
[Skip to Readme]
Modules
[Index]
Flags
Manual Flags
| Name | Description | Default |
|---|---|---|
| pedantic | Pass additional warning flags to GHC. | Disabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- between-0.11.0.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
| Versions [RSS] | 0.9.0.0, 0.9.0.1, 0.9.0.2, 0.10.0.0, 0.11.0.0 |
|---|---|
| Change log | ChangeLog.md |
| Dependencies | base (>3 && <5) [details] |
| Tested with | ghc ==7.6.3, ghc ==7.8.4, ghc ==7.10.3 |
| License | BSD-3-Clause |
| Copyright | (c) 2013-2016, Peter Trško |
| Author | Peter Trško |
| Maintainer | peter.trsko@gmail.com |
| Category | Data |
| Home page | https://github.com/trskop/between |
| Bug tracker | https://github.com/trskop/between/issues |
| Source repo | head: git clone git://github.com/trskop/between.git this: git clone git://github.com/trskop/between.git(tag v0.11.0.0) |
| Uploaded | by PeterTrsko at 2016-01-09T12:06:16Z |
| Distributions | LTSHaskell:0.11.0.0, NixOS:0.11.0.0, Stackage:0.11.0.0 |
| Reverse Dependencies | 3 direct, 0 indirect [details] |
| Downloads | 5485 total (14 in the last 30 days) |
| Rating | (no votes yet) [estimated by Bayesian average] |
| Your Rating | |
| Status | Docs available [build log] Last success reported on 2016-01-09 [all 1 reports] |