On Tue, 23 Apr 2013 13:33:31 -0400, Andrei Alexandrescu <[email protected]> wrote:

Our intent is to make "ref" always scoped and reserve non-scoped uses to pointers.

So no more returning ref? Because if you allow returning ref, you lose any notion of safety, unless you plan on changing the entire compilation model?

We consider this good language design: we have unrestricted pointers for code that doesn't care much about safety, and we have "ref" which is almost as powerful but sacrifices a teeny bit of that power for the sake of guaranteed safety. Safety is guaranteed by making sure "ref" is always scoped (references can be passed down but never escape their bound value).

Not being able to return ref is a large loss of power.

Not arguing in favor of DIP36, but it seems there is a misunderstanding as to what it does.

-Steve

Reply via email to