unison icon indicating copy to clipboard operation
unison copied to clipboard

Learning materials: Abilities pt 3 - Abilities for Monads Users

Open rlmark opened this issue 3 years ago • 1 comments

Optional part 3 for abilities tutorial. Abilities for Monads users. Builds on the motivation for abilities in part 1 but with an eye towards users who are experienced with monadic effect management.

Outline / notes in progress: https://www.notion.so/unisonweb/Abilities-For-Monads-Users-61a28ee906054cbcbbb67eabe6027511

  • [ ] Common mental model gotchas
    • [ ] map/flatMap as function composition
    • [ ] Referential transparency in new paradigm (no more type tetris)
  • [ ] Why would we need them?
    • [ ] Stacks of monads can be a pain. Monad transformers can still be a pain.
    • [ ] Compositionality
  • [ ] When are they "the same?"
    • [ ] Common monadic datatypes and their algebraic effect counterpoints
  • [ ] When should we reach for one over the other
  • [ ] For the Galaxy brain users: Free Monads and their connection to Algebraic effects.

rlmark avatar Jul 12 '21 21:07 rlmark

Tagged @pchiusano because I think you have a gist started for the free monad portion of this.

rlmark avatar Jul 13 '21 17:07 rlmark