u/snoyjerkin r/haskell • Recommends
#monadtransformers#haskell#monad-control
Monad Transformer State - Michael Snoyman
10K subscribers • 16 videos on Hallway
- Recommended by 1 person: 1 in engineering communities.
- Presented by Michael Snoyman
Advanced. Deep dive for people who know the field.
14K views8 years ago1 recommendation
Programming languagesSoftware designHaskellFunctional programmingConcurrency and parallelism
Michael Snoyman explains the surprising behaviors of implicit state in monad transformers and how to structure Haskell applications safely.
Everything you didn’t want to know about monad transformer state was a presentation given as part of Lambda World 2017 by Michael Snoyman. Follow: -twitter.com/47deg -twitter.com/lambda_world -twitter.com/snoyberg Visit: -47deg.com/events for more details ___ Monad transformers are often used in Haskell applications to model state, capture results, and deal with explicit exceptions. In order to make these monad transformer stacks work with concurrency primitives, runtime exceptions, and more, we'll often use libraries like lifted-base, lifted-async, monad-control, and exceptions. But contrary to the expectations of many, surprising things can happen with the implicit state of our transformers. This talk will explain the problem, demonstrate where surprising behavior pops up, and recommend ways to structure your libraries and applications to sidestep the issue entirely.Why it's here
1 person recommends thisWhat people say. Recommended for its deep dive into the complexities and pitfalls of monad transformer state in concurrent Haskell applications.
Moments people linked to
u/Faucelmein r/haskell • Mentions
On “Why exactly I want Boring Haskell to happen”
u/snoybergin r/haskell • Mentions
On “RIO: A Prelude Replacement”
u/Faucelmein r/haskell • Mentions
On “Demystifying `MonadBaseControl`”
u/Faucelmein r/haskell • Mentions
On “Monthly Hask Anything (April 2020)”
u/shiraeeshiin r/haskell • Mentions
On “Error handling in the RIO and UnliftIO world”
u/dfordivamin r/haskell • Mentions
On “though about multi threading in haskell”
u/Faucelmein r/haskell • Mentions
On “Monthly Hask Anything (December 2018)”
u/Faucelmein r/haskell • Mentions
On “Help needed: Scraping web pages concurrently and saving the results to a big JSON file, in constant memory”
u/kuleshevichin r/haskell • Mentions
On “Forcing exceptions to be listed in the type signature”