|over 4 years ago||almost 2 years ago|
|BSD 3-clause "New" or "Revised" License||MIT License|
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
We haven't tracked posts mentioning stm-extras yet.
Tracking mentions began in Dec 2020.
Software Transactional Memory (1997)
4 projects | news.ycombinator.com | 26 Jul 2022
I think you are right about STM being roughly equivalent to snapshot isolation.
What STM offers is an easy way to invent "containers for snapshotted values" aka TVars. Using them carefully may result in better scaling: https://hackage.haskell.org/package/stm-containers
How to achieve "Run at most one parallel async action per user"?
1 project | reddit.com/r/haskell | 9 Nov 2021
how about use stm-containers?
What are some alternatives?
stm-incremental - A very simple interface for incremental computation using STM in Haskell.
stm-chunked-queues - Thread communication queues that group items/requests that occur close together in time
theatre - Minimalistic actor library for Haskell
restricted-workers - Interactive-diagrams
named-lock - A named lock that is created on demand.
conceit - Concurrently + Either
ttrie - A contention-free STM hash map for Haskell
stm-channelize - Transactional I/O for duplex streams
stm-conduit - STM-based channels for conduits.
stm-queue-extras - Extra utilities for STM queues