> The graph can be modified safely by any number of threads concurrently, 
> however concurrent updates result in different graph versions. A graph 
> version is just another another root 'SharedPtr[ref T]`. (To be clear, a 
> graph version is not a full copy of the graph -- it's merely a copy of the 
> nodes that have been updated)

Reminds me of Clojure's STM system. I never used it myself but its the only 
other plausible shared multi-threading paradigm that I know about. Here's a 
longer reference: <https://clojure.org/reference/refs>

I think it be great to implement something like it with ORC and lent's. 

Reply via email to