http://d.puremagic.com/issues/show_bug.cgi?id=7723
--- Comment #4 from Jonathan M Davis <jmdavisp...@gmx.com> 2012-03-20 18:14:59 PDT --- It seems to me that you're not looking for a property. You just think that the empty parens are annoying and don't want to have to use them, and property syntax is the only way to do that. Personally, I'm completely against using @property on anything that could conceptually be a field of a class. filter and map are very much functions and are staples of functional languages, so I'm completely against marking them as properties, regardless of what syntactic benefits there may be in doing so. > Are you sure? > Even when Bug 7722 will be fixed, I think the following code will be valid: > @property T head(T)(T[] a) { return a[0]; } > void main() { > int r1 = head([1, 2, 3]); > int r2 = [1, 2, 3].head(); > int r3 = [1, 2, 3].head; > } Strong property enforcement would mean that @property functions can _never_ be called with parens, and functions which aren't marked with @property must _always_ be called with parens. That's what TDPL describes. And as such, r3 would be the only legal option. I don't know what the current implementation is doing though. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------