Skip to content
0:00 / 0:00

#haskell#monad-transformers#rio

Gabriella Gonzalez on "Monad transformers are good, actually" @ZuriHac2023

OST – Ostschweizer Fachhochschule

3.4K subscribers • 11 videos on Hallway

YouTube
  • Recommended by 4 people: 4 in engineering communities.
  • Presented by Gabriella Gonzalez, author of Dhall
  • An opinion. It argues one side of a question engineers disagree on.

Intermediate. Assumes working knowledge.

7K views3 years ago4 recommendations

Programming languagesSoftware designFunctional programmingDesign patterns

Gabriella Gonzalez explains how monad transformers work and argues for their benefits over alternative effect systems in Haskell.

Gabriella is a Haskell programmer at Mercury and a deck-building game superstar. She is the author of a ton of Haskell libraries and tools including pipes and Dhall, and she also writes the amazing Haskell for all blog. Introduced by Jasper Van der Jeugt. zfoh.ch/ ost.ch/

Why it's here

4 people recommend this

What people say. Highly recommended as an excellent explanation of monad transformers that helps developers appreciate and understand them.

u/jeffstyrin r/haskell • Recommends

On “Am I the only person who hates Monad Transformers?”

I think a lot of people hate them. I gained a new appreciation and better understanding of them after watching Gabriella Gonzalez' talk "Monad transformers are good, actually" (which is an excellent presentation), but appreciation and understanding isn't the same as eagerness to and pleasure in using them extensively. (That is to say, the talk is good and worthwhile even if you don't end up liking them overall.) I had to google "Haskell handle pattern" and I haven't fully read the blog post yet, but I'm wondering if this is similar go Bluefin's approach to passing effect handlers(?) as explicit function parameters rather than implicitly via typeclass constraints. Tom Ellis' talk [Bluefin…

u/Historical_Emphasis7in r/haskell • Recommends

On “It's not you, it's monad transformers”

…you could refactor your glue code to RIO \~ Glue Vii. If the Effects bug bites you at a later stage you could refactor again to one of the sibling RIO++ effect systems for Glue Viii, Effectful or Bluefin depending on your tastes. OR ignore the above and stick with monad transformers but a least get a good explanation of how they work: \- [video \- https://github.com/mgrabmueller/TransformersStepByStep/blob/master/pdf/Transformers.pdf \- https://github.com/bookshelfdave/monad-transformers-step-by-step…

u/prrxddqin r/haskell • Recommends

On “Monthly Hask Anything (September 2023)”

I did create a small scotty app to track my workouts and am refactoring bad looking parts trying to improve my Haskell. It feels like I could definetly make this less clunky code snippet. Perhaps with somethink like monad transformers? I saw a talk from gabriella at zurihac 23 here and this feels like a pretty similar pattern. Any advice or tips on how to fix the nested/repeated usage of `case ... of` with matching on Maybe or Either types are highly appreciated!

u/n00bombin r/haskell • Recommends

On “Am I the only person who hates Monad Transformers?”

Monad transformers are good, actually