5 ms·
In case anyone else was wondering what this jargon meant, "non-lexical lifetime": https://github.com/rust-lang/rust/issues/43234 https://github.com/rust-lang/r
by jordigh 8y ago
In case anyone else was wondering what this jargon meant, "non-lexical lifetime":
https://github.com/rust-lang/rust/issues/43234 https://github.com/rust-lang/rust/issues/43234
Took me a bit of websearching to figure out what people were excited about.
- steveklabnik 8y agoGood call, thanks. Additionally, even that is kind of jargon. The simplest answer is “the borrow checker will allow some kinds of code that is sound, but the previous borrow checker could not understand that it was sound.”
- cpeterso 8y agoI see that NLL makes the borrow checker easier to work with for developers, but does NLL actually change when objects will be dropped at run-time?
- steveklabnik 8y agoNLL does not affect things that implement Drop. This is called "eager drop", and while it would only affect unsafe code, we deemed it to be too likely to cause problems with said code. Even though it's unsafe, we don't want to make that even harder to understand.
- cpeterso 8y agoThat makes sense. A developer writing unsafe code can more easily and clearly control their drops by introducing new scopes than deciphering where the eager drop happened.
- deleted 8y ago[deleted]