4 ms·
> i can also have STM in a dynamic language How can you roll back failed transactions without explicitly typed effects?
by tome 9y ago
> i can also have STM in a dynamic language
How can you roll back failed transactions without explicitly typed effects?
- platz 9y agoClojure tracks and rollbacks the STM-bound variables according the STM rules; it is not intended to prevent you from doing other effects inside those transactions; you are supposed to have an understanding not to do that in the transaction blocks. It helps a bit that most clojure datastructures are immutable/persistant by default.
- tome 9y agoIn other words Haskell's STM prevents bugs that Clojure's merely supposes the programmer not to have written.