Personal tools

Unamb

From HaskellWiki

Revision as of 16:11, 19 November 2008 by Conal (Talk | contribs)

Jump to: navigation, search


Abstract

unamb is a package containing the unambiguous choice operator
unamb
, which wraps thread racing up in a purely functional, semantically simple wrapper. Given any two arguments
u
and
v
that agree unless bottom, the value of
unamb u v
is the more terminating of
u
and
v
. Operationally, the value of
unamb u v
becomes available when the earlier of
u
and
v
does. The agreement precondition ensures unamb's referential transparency. For more info about
unamb
and its use, see the paper Simply Efficient Functional Reactivity, sections 10 and 11.
unamb
was originally a part of Reactive. I moved it to its own package in order to encourage experimentation.

Besides this wiki page, here are more ways to find out about unamb:

Please leave comments at the Talk page.

As of version 0.1.1, unamb requires ghc 6.10 or better.