15 ms·
Haskell also allows you to share heap-allocated immutable data structures between threads, right? I think someone said this language doesn't support reference s
by _bxg1 6y ago
Haskell also allows you to share heap-allocated immutable data structures between threads, right? I think someone said this language doesn't support reference sharing across threads, but that could've been wrong
- amelius 6y agoYes, indeed threads could be problematic. But as long as you're not storing closures in those shared data-structures, these structures will always be acyclic, and could be collected through simple reference counting. Perhaps that's an acceptable compromise.
- ferzul 6y agoisn't: let x = 1:x cyclic, but without closure? unless closure is so broad as to capture essentially any haskell value. it's not going to be obvious when there is a cyclic reference (e.g. if you use `let x = repeat 1` instead of the definition above)