Difference between revisions of "Unamb"

From HaskellWiki
Jump to navigation Jump to search
m (find out about)
m (mention the new dependency on ghc 6.10 (base >= 4))
Line 1: Line 1:
 
[[Category:Packages]]
 
[[Category:Packages]]
  +
[[Category:Concurrency]]
   
 
== Abstract ==
 
== Abstract ==
Line 14: Line 15:
   
 
Please leave comments at the [[Talk:unamb|Talk page]].
 
Please leave comments at the [[Talk:unamb|Talk page]].
  +
  +
As of version 0.1.1, unamb requires ghc 6.10 or better.

Revision as of 16:11, 19 November 2008


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.