@property - take it behind the woodshed and shoot it?
Rob T
alanb at ucora.com
Fri Jan 25 09:17:10 PST 2013
On Friday, 25 January 2013 at 16:43:45 UTC, Jesse Phillips wrote:
[...]
> That said many that want @property, want optional parens to
> die, as shown by your side comment that follows.
>
I think that observation pins the whole debate down, and it's an
incredible amount of debate for something that boils down little
more than personal taste. We don't even need property-like
behavior, it's not that important. Meanwhile really serious
problems exist that are not being attended to.
The concept of a property works perfectly fine without explicit
@property enforcement (except for perhaps an edge case or two
that can be corrected). When I started with D, the TDPL told me
that I had to put @property in, and it was actually a relief to
discover that I did not have to do that. It's a waste of time,
and more than half the time I could not decide if I wanted
property-like behavior or not, so the lack of enforcement was a
plus for me.
If the default behavior is optional parens plus no @property
enforcement, i.e., the current behavior, then for the people who
want to change the default behavior need to specify @property and
we implement enforcement for those situations. However, for the
remaining functions, the property behavior is optional and not
enforced, so some means such as the @function proposal will be
needed to enforce the traditional c-like function call syntax.
But is there any real need for the extra complications of
implementing property and c-style function call enforcement? This
is D and there's no law that states that D must behave exactly
like C.
I think Walters proposal to shoot @property is perfectly sound.
Get rid of it, fix the edge cases, and move on to solving the
problems that matter a whole lot more than this one.
If Walter's proposal is not sound, then we need real clear
technical reasons why enforcement is required, as opposed to
arguments that boil down to personal tastes.
--rt
More information about the Digitalmars-d
mailing list