commit e4ad625416c0f90722843f8ee4905b416e641e13
parent ce29df3c8c5d600f5bd7decefd2ba10b8d01d060
Author: Jared Tobin <jared@jtobin.ca>
Date: Thu, 2 Apr 2015 18:33:58 +1000
Update README.
Diffstat:
1 file changed, 21 insertions(+), 1 deletion(-)
diff --git a/README.md b/README.md
@@ -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!
+