5 ms·
So cool! Any languages support STM first class besides Haskell?
by scottmas 10mo ago
So cool! Any languages support STM first class besides Haskell?
- CGamesPlay 10mo agoLooks like somebody made a Rust experiment back when Rust was new: https://docs.rs/stm/latest/stm/ https://docs.rs/stm/latest/stm/
- lmm 10mo agoScala has great STM in the same way (monad-based).
- LelouBil 10mo agoNot "first class" but pretty good in Kotlin https://arrow-kt.io/learn/coroutines/stm/ https://arrow-kt.io/learn/coroutines/stm/
- spencerflem 10mo agoThe new Verse lang by Epic Games & a core Haskell contributor has a lot of transaction features. I don’t know if it’s exactly the same as STM though.
- andersa 10mo agoVerse only supports single-threaded transactional memory. Epic hasn't yet demonstrated that their approach can actually scale to be used from multiple threads in a useful manner, though they claim that it will.
- stackghost 10mo agoThere are c++ libraries that offer it.
- hackingonempty 10mo agoScala supports it with for-comprehensions which are equivalent to Haskell's do-notation but STM is not part of the Scala standard library. Zio and Cats Effect are two popular Scala effects systems with STM.
- cosmic_quanta 10mo agoI think a decade ago or so, people started trying to integrate STM in Pypy
- vijaysharma12 10mo agoI believe Clojure has first class support for STM.