A simple shallowly-embedded DSL for dealing with measures.
Log | Files | Refs | README | LICENSE

commit e4ad625416c0f90722843f8ee4905b416e641e13
parent ce29df3c8c5d600f5bd7decefd2ba10b8d01d060
Author: Jared Tobin <>
Date:   Thu,  2 Apr 2015 18:33:58 +1000

Update README.

Diffstat: | 22+++++++++++++++++++++-
1 file changed, 21 insertions(+), 1 deletion(-)

diff --git a/ b/ @@ -1,5 +1,25 @@ measurable ---------- -An experimental embedded DSL for creating, manipulating, and using measures. +*measurable* is a simple shallowly-embedded DSL for dealing with measures. + +It uses a `Measure` synonym for a standard continuation type with a restricted +output type and no `callCC` implementation. You can construct measures from +samples, mass/density functions, or even sampling functions. + +Construct image measures by `fmap`-ing measurable functions over them, or +create new measures from existing ones by measure convolution and friends +provided by a simple `Num` instance enabled by an `Applicative` instance. +Create measures from graphs of other measures using the `Monad` instance and +do-notation. + +Query measures by integrating meaurable functions against them. Extract +moments, cumulative density functions, or probabilities. + +Check out the module comments or **examples** folder for sample use. + +Caveat: while fun to play with, and rewarding to see how measures fit together, +measure operations as nested integrals are exponentially complex. Don't expect +them to scale very far! +