On Monday, April 23, 2012 01:01:48 Adam D. Ruppe wrote: > On Sunday, 22 April 2012 at 22:36:12 UTC, Jonathan M Davis wrote: > > Eventually -property will be the normal behavior. > > Note that -property adds zero value, much like the current > implementation of @property, which fails to disambiguate > cases: > > == > import std.stdio; > > alias void delegate() callable; > > class Test { > @property callable a() { return { writeln("hello"); }; } > } > > void main() { > auto t = new Test(); > t.a(); // does NOT say hello > t.a()(); // this does > } > == > > I thought this case was the WHOLE POINT of adding > @property, and it is still wrong.
Then there's a bug that needs to be fixed. http://d.puremagic.com/issues/show_bug.cgi?id=7970 > Note that this should work just fine without the > pointless baggage that is -property, since the > @property gives the necessary info to disambiguate > it. But, apparently, the compiler ignores it all, > with or without the switch. Well, I completely disagree with you on @property. I think that definitely adds value and that we're far better off having it - as long as it's properly enforced. But we've debated this before, and from what I can tell, neither of us is going to convince the other. @property has proven to be one of the more devisive feature changes in D. - Jonathan M Davis