[Haskell'23] The Evolution of Effects

Поділитися
Вставка
  • Опубліковано 31 січ 2025

КОМЕНТАРІ • 13

  • @mskiptr
    @mskiptr Рік тому +17

    I've actually found a use for the backwards state monad once. And I didn't even know about it at the time.
    For an information theory class we were tasked with implementing some compression algorithms. Since we were free to choose the language - and I was very much into Haskell at the time - I picked that.
    I wanted the implementation to be single-pass. I don't remember the full details, but since there were cases where the algorithm would need to look up things in its future output and that sort of thing is possible with lazy data structures I started looking around how to do that with the State type. Ultimately I arrived at Control.Monad.Tardis which provides "the time-traveling monad". It provides two states: one wired-up normally and one going backwards.

  • @paryoticu
    @paryoticu Рік тому +8

    Terrific presentation.

  • @federicoagustinsawadyoconn2716
    @federicoagustinsawadyoconn2716 8 місяців тому +1

    It took me a week to watch the whole video 🤣, thanks for all this and excellent talk.

  • @statebased
    @statebased Рік тому +2

    I loved the "row type" comment. I tried many years ago to write my own effect aware language compiler with row types, but got blocked by complexity. Still, this did teach me that formulating coeffects was "easier" than working with effects. Something I still believe.

  • @davidespinosa1910
    @davidespinosa1910 3 місяці тому

    This excellent history omits Eugenio Moggi's "Abstract View of Programming Languages" notes, which he wrote in Spring 1989, while visiting John Mitchell at Stanford. These notes include a complete and detailed discussion of monad transformers, which were not understood by the rest of the community until January 1995, even though Phil Wadler cited Moggi's notes in his "Comprehending Monads" paper (1990) and "Essence of FP" paper (1992). Another important reference is Jon Beck's paper on Distributive Laws from the 1966/67 Seminar on Triples [ triples are monads !] and Categorical Homology Theory, which is available as a TAC reprint. Monads were the new hotness in 1967. 🙂

  • @asdfghyter
    @asdfghyter Рік тому

    thank you! very helpful history lesson!

  • @GrzegorzMilka
    @GrzegorzMilka Рік тому

    Excellent talk

  • @anarchymatt
    @anarchymatt Рік тому +5

    Imagine giving a presentation about Haskell and you get a question from Simon 🤣

  • @vpatryshev
    @vpatryshev 8 місяців тому

    Seems like you've mixed up applicative functor (aka closed functor) and state monad.

  • @laughingvampire7555
    @laughingvampire7555 11 місяців тому +2

    summary: monads were too much, maybe Lisp was onto something.
    Lispers: the right answer has always been Lisp

    • @abj136
      @abj136 6 місяців тому +1

      I didn’t understand everything, but what I did understand does not agree with your summary.

  • @meme_gawd
    @meme_gawd Рік тому +2

    We start in Church

    • @korigamik
      @korigamik 11 місяців тому +5

      You getting married?