User:Duplode/Awkward squad plan
Appearance
Mutable objects
[edit | edit source]- Introduction: suggest typical use cases − low-level interfaces with external libraries, algorithms that demand mutability, huge volumes of data.
- IORefs: basic example, point out concurrency pitfalls, link to Concurrency.
- ST: Isolated mutability. A word or two on existentials. A hashtables example. (A link to, or an adaptation of, augustuss' quicksort?)
- Other references: Haskell Cafe thread on the need for global mutable state.
Concurrency
[edit | edit source]- MVar
- STM
- Validate the memoisation example currently there.
- Integrate the STM example from Haskell/Practical monads
- References: SPJ's Awkward Squad
Effectful streaming
[edit | edit source]- The pitfalls of lazy IO.
- Probably use Pipes, but also mention Conduit.
Exceptions
[edit | edit source]- ExceptT will likely be mentioned elsewhere already.
- What else to include? (Control.Exception? Gabriel's errors (see also http://www.haskellforall.com/2012/07/errors-10-simplified-error-handling.html)?)