Slide 28
Slide 28 text
STM
Haskell is the best language in the world in which to implement an STM
• It was originally 100 lines of code, and even now it’s only about 600
lines of C!
• It exploits three properties of the language: purity, immutability and
laziness
• Haskell retries an STM transaction as needed. Immutability allows it to
do this fearlessly, and laziness avoids fully evaluating the transaction
• STM is harder in other languages. For instance in Clojure you have to
manually implement rollback functionality.
https://begriffs.com/posts/2016-04-02-software-transactional-memory.html