Is @safe still a work-in-progress?

Walter Bright newshound2 at digitalmars.com
Tue Aug 21 00:09:03 UTC 2018


On 8/20/2018 6:46 AM, Steven Schveighoffer wrote:
> I would, but I have no idea how dip1000 is supposed to work. I think only you 
> understand it. Even looking at the PR that you have been citing over and over, I 
> can't make heads or tails of what it does or what it allows.

The way to understand dip1000 is to forget about `this`, arrays, structs, 
classes, delegates, etc. Just think about pointers - functions that take 
pointers as arguments, and return pointers.

That simplifies things enormously.

Once that makes sense, then deconstruct the higher level constructs into 
pointers, and then you'll see how they work.

This is why my presentation does it all in terms of pointers:

     http://dconf.org/2017/talks/bright.html

If you're having trouble understanding a particular example, rewrite it in terms 
of pointers. If it still is inscrutable, then ask about the pointer version here.

(When someone gives me some complex thing and says "I don't understand scope 
here", I always first rewrite it in terms of pointers. It's the same thing I do 
with bug reports that use templates - I manually instantiate the templates first.)



More information about the Digitalmars-d mailing list