On Friday, 9 October 2015 at 19:48:39 UTC, Dmitry Olshansky wrote:
On 09-Oct-2015 21:44, Freddy wrote:
On Friday, 9 October 2015 at 04:15:42 UTC, Ali Çehreli wrote:
Semi-relatedly, a colleague who has heard many D sales pitches from me over the years is recently "looking at Go" and liking it very much. He came to me today telling me about this awesome Go feature where you just type a dot after a pointer and the language is so great that it
works! You don't need to type (*p).member. Isn't Go awesome!

I responded "yep, it's a great feature and those gostards will never admit that they took that feature from D." (There is probably earlier
precedence but it felt great to say it to my friend. :) )

Ali

Stole from D? You mean java right?

There is no value type objects in Java so no. More likely C#.

Nope - C# uses -> to access member of a struct referenced by a pointer. See https://msdn.microsoft.com/en-us/library/50sbeks5.aspx

The difference between reference types and pointers is that with reference types, THERE ARE NO value varaiables. So it's safe to use . instead of -> for accessing member through a reference because there is no value type, because there is no such a thing as accessing a member of a reference type without dereferencing it. So it's safe to do so on classes in C#, but not on structs.

This is the innovation in D(regarding this issue) - that on struct types, the same operator is used for BOTH the value type and the pointer to it.

Reply via email to