On 2/6/2013 7:30 PM, deadalnix wrote:
The limitation on address taking seriously impair the possibility of
implementing @property properly to emulate a field.
Properties are always going to be subsets of fields. For example,
@property int foo() { return 3; }
is never going to work with trying to get the address of 3. Trying to make it
work would be a quixotic quest of dubious utility. I.e. I disagree that it is a
serious impairment.
It seems like a solvable problem, as scope can be explicited. But then, some
address taking are back, and so the syntax problem around previous DIP isn't
solved (But that is arguably a good thing as we should solve problems
themselves, not symptoms).
The only time (now) that you can take the address of function return value is if
that is a return by ref. So, if taking the address of a ref is disallowed, then
the syntax is no longer ambiguous.