On Fri, 31 Jul 2009 12:13:55 -0400, Andrei Alexandrescu <seewebsiteforem...@erdani.org> wrote:

Maybe we should vote on this too. BTW, seems like the last poll wasn't quite the expected landslide against the dictature :o).

I think the poll might have been skewed due to context (forget my newsgroup poll, that was worthy of an abortion, but I also didn't mean to submit it :), I'm talking about Ary's)

The question was asked, what do you think this code means. In the context of D, where you know a symbol without parentheses can mean either a function or a property/field, I'm certain there were several respondants who didn't understand it was asking what they think is best, not *what D currently does*. Ask that same questions to C++ developers and see what you get...

It's hard to phrase the question properly without bias to a group of people who already know the current behavior. Maybe something like:

Assume the D programming language required parentheses for normal parameter-less functions, and required no parentheses for parameter-less functions that returned a property. For example, the following code should imply a getter for a filter inside x:

    auto tmp = x.filter;

And the following code should imply performing a filtering action using x, returning the result:

    auto tmp = x.filter();

Do you think it's worth adding such a capability, given that you will then no longer be able to call ordinary parameter-less functions without parentheses, an author of a property function must properly indicate that the function is a property, and the compiler must trust the author for this implication?

-Steve

Reply via email to