Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
unamb  contains 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. unamb was originally a part of Reactive . I moved it to its own package in order to encourage experimentation. Please share any comments & suggestions on the discussion (talk) page at . You can configure, build, and install all in the usual way with Cabal commands. runhaskell Setup.lhs configure runhaskell Setup.lhs build runhaskell Setup.lhs install References:  http://haskell.org/haskellwiki/unamb  http://conal.net/papers/simply-reactive  http://haskell.org/haskellwiki/reactive