Skip to content
0:00 / 0:00

#stm#softwaretransactionalmemory#concurrencypatterns

Using STM for Modular Concurrency: An Industrial Experience Report on Software Transactional Memory

ACM SIGPLAN

11K subscribers • 61 videos on Hallway

YouTube
  • Recommended by 2 people: 1 on Lobsters and 1 in engineering communities.

Intermediate. Assumes working knowledge.

1.3K views6 years ago2 recommendations

Programming languagesDistributed systemsHaskellConcurrency and parallelism

This talk shares large-scale design patterns, testing techniques, and industrial experiences using Software Transactional Memory (STM) in Haskell.

icfp20.sigplan.org/details/haskellsymp-2020-papers/1/Using-S… Software Transactional Memory (STM) has been available within Haskell for around fifteen years, yet it remains a somewhat under-appreciated feature. This talk aims to redress that by sharing the experiences from a recent successful industrial project that relies extensively and fundamentally on STM. There are good articles, book chapters and blogs on STM at the micro level: looking at the details of the primitives and how to use them to build bigger abstractions. This talk will try to focus on STM at the macro level: larger scale design patterns, how it fits into a system as a whole, and testing techniques. The focus of this experience report is the application of STM in the context of highly concurrent systems with many modular concurrent components, and the use of STM to help structure the communication and interaction of these components. This contrasts for example with a database pattern where many threads executing transitions on one bundle of shared state.

Why it's here

2 people recommend this

What people say. Recommended as a great real-world case study demonstrating the benefits and production readiness of Software Transactional Memory.

vg_headon Lobsters • Recommends

Using STM for Modular Concurrency: An Industrial Experience Report on Software Transactional Memory (2020)

u/n00bombin r/haskell • Recommends

On “What's the best way to follow Edward Kmett's work?”

I find it strange that you need someone you admire to endorse something. STM is heavily used in production, and many people praise it.