On Friday, 12 December 2014 at 06:57:54 UTC, deadalnix wrote:
On Friday, 12 December 2014 at 06:06:40 UTC, Dicebot wrote:
On Thursday, 11 December 2014 at 21:41:11 UTC, Walter Bright wrote:
Consider a ref counted type, RC!T. If scope were transitive, then you could not have, say, a tree where the edges were RC!T. I.e., the payload of an RC type should not be forced to be scope.

I don't see how this is related. It would be perfectly ok to declare root of such tree scope if it was transitive (as long as it only controls access and does not attempt early destruction).


That is my proposal. However, it is not as simply as you think it is without making it a type qualifier (which is not desirable).

In effect, that mean that you can see something that has infinite lifetime through a scope reference, so you need to track lifetime rvalue and lvalue differently.

I'm still for it. The current proposal is not powerful enough to pull its weight.

I don't hope it will be simple. It is all about making scope as simple as possible to keep it useful for idiomatic D code - but not simpler.

Reply via email to