- Vital for some modern applications and large applications commonly require it
- Stable MVar implementation is well understood and tested
- Imposes non trivial implementation constraints.
- Providing a 'select' and non-blocking IO would be enough to allow people to implement something like it themselves in haskell and are provided by most systems as primitives.
- Things like the 'poor man's concurrency monad' can achieve some of the benefits
- only one implementation exists, design space not very well explored.
- Unsure at this point if new STM will replace older MVar-style concurrency
Download in other formats: