Y
Hacker News
new
|
ask
|
show
|
jobs
by
eschew
4200 days ago
GHC, at least, uses the same implementation for IORef and STRef:
http://hackage.haskell.org/package/base-4.3.1.0/docs/src/GHC...
Poking through GHC's runtime source, I see a writer barrier but no locking -- did I miss something?
1 comments
IsTom
4200 days ago
Looking deeper you're right, it seems to use atomic CAS operations. Still mutable data is bad for GC and optimization pass (can't share expressions etc.)
link