Why don’t we just do this by default for threading in most languages? It’s pretty rare for me to actually want to do memory sharing while threading (mostly because of the complexity)
It's not "super slow" and most languages do something very similar within concurrent data structures.
Also, copy by value in itself is just a semantic requirement, it doesn't say how it's implemented.
And shared mutable memory is pretty damn slow (given you are not fine with data race garbage), because atomic operations destroy caches. So it's the usual space-time tradeoff at the end of the day.
vbezhenar|1 month ago
gf000|1 month ago
Also, copy by value in itself is just a semantic requirement, it doesn't say how it's implemented.
And shared mutable memory is pretty damn slow (given you are not fine with data race garbage), because atomic operations destroy caches. So it's the usual space-time tradeoff at the end of the day.