
#9321: Support for waiting on multiple MVars -------------------------------------+------------------------------------- Reporter: schyler | Owner: simonmar Type: feature | Status: new request | Milestone: Priority: normal | Version: 7.8.3 Component: Runtime | Keywords: mvar System | Operating System: Unknown/Multiple Resolution: | Type of failure: None/Unknown Differential Revisions: | Test Case: Architecture: | Blocking: Unknown/Multiple | Difficulty: Unknown | Blocked By: | Related Tickets: | -------------------------------------+------------------------------------- Comment (by simonpj): Some things to think about here: * Could we instead make the STM implementation fairer or faster, if those are the problems? * Before going anywhere, you need to define a complete API (e.g. is `fuseMVar` the only new operation?) and then give the semantics of the new operations. The original Concurrent Haskell paper, or `Tackling the Awkward Squad` gives the style for this semantics. That will force to the surface questions like: * What if you `take` or `put` to a fused `MVar`? * Can the same `MVar` be fused in to several different compounds? Simon -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9321#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler