Well ok, I'll repeat my points:

  * shared_ptr + weak pointers might as well be _harder_ to use as the owned 
ref proposal as introducing cycles accidentically is easier than with the 
enforced single-owner rule. unique+shared+weak are 3 different pointer types, 
my proposal only has two different pointer types btw.
  * using reference counting to detect dangling pointers at runtime offers far 
more flexibility than Rust's solution: Lifetimes only really work for 
stack-like semantics as the lifetimes are lexically scoped.
  * The solution really does help with multi-threading, you don't have to 
"optimize away" the refcounts as it is done in the paper, you can simply 
disable them in a production setting. Type based allocations can then prevent 
the catastrophic remote code execution attacks. Yes, I know you cannot accept 
it. The **fact** remains though that this is the same as using array indexing 
into outdated array entries, which Rust and Ada also allow and nobody ever 
seemed to complain about.


Reply via email to