Re:Does the Bronze Garbage Collector Make Rust Easier to Use?
by staticassertion on Thursday December 23, 2021 @01:27PM
(#29664782)
Yes, that's correct. I just want to be clear that it's not like destructors in rust are unreliable in the way that finalizers are in Java.
[ Parent
| on HN ]
Re:Does the Bronze Garbage Collector Make Rust Easier to Use?
by klodolph on Thursday December 23, 2021 @01:34PM
(#29664865)
To be clear, I definitely wasn't talking about that.
Since you can't use the type system to guarantee that an object is destroyed, there are a few things in Rust that are a major pain to get working. Like passing a reference to a short-lived thread.
Re:Does the Bronze Garbage Collector Make Rust Easier to Use?
by staticassertion on Thursday December 23, 2021 @03:52PM
(#29666323)
It's not that hard in my experience. You generally do it by using a guarded scope where the user provides a callback and doesn't manage the resource (like a thread) themselves.
Re:Does the Bronze Garbage Collector Make Rust Easier to Use?
by klodolph on Thursday December 23, 2021 @10:58PM
(#29669992)
Sure, if that works for you, it's easy. Stuff like crossbeam::scope only solves a subset of the problem, though. When that solution doesn't work for you, it's a pain.
Using a scope is, strictly speaking, less powerful and more annoying to work with than a more general system of linear types. It's like Go's defer, or C#'s using/IDisposable... they work in certain scenarios, but there's a percentage of the time where a lexical scope or function scope doesn't match the lifetime of your object, or can't match the lifetime of your object.
Re:Does the Bronze Garbage Collector Make Rust Easier to Use?
by staticassertion on Friday December 24, 2021 @11:41AM
(#29675022)
Yep, agreed.