@property - take it behind the woodshed and shoot it?

Adam Wilson flyboynw at gmail.com
Thu Jan 24 16:42:14 PST 2013


On Thu, 24 Jan 2013 16:34:44 -0800, Jesse Phillips  
<Jessekphillips+D at gmail.com> wrote:

> On Thursday, 24 January 2013 at 08:35:01 UTC, Walter Bright wrote:
>> 1. Empty parens are optional. If there is an ambiguity with the return  
>> value taking (), the () go on the return value.
>
> As mentioned, this seems dangerous. I'd suggest requiring when there is  
> ambiguity. It still has generic problems, but it will never be silent.
>
>> 4. No more @property.
>
> I'm on the side that would miss optional parens if they died. In would  
> be nice if @property actually made a function behave like a field.
>
> foo += bar;
>
> It seems there are lots of complications around this? So yes kill  
> @property.
>
> On another note,
>
> To properly correct this situation we will break code. So before you get  
> started be sure to try out the new feature preview release approach :)

The problem is that the moment we start talking about @property the  
optional parens people (colloquially referred to henceforth as "your  
side") start jumping in and attacking us about how removing optional  
parens would make your sides lives utter misery.

(Personally, i'd beg to differ, I work with C# UFCS every, freaking, day.  
I don't even notice the extra parens any more. But most importantly, the  
syntax is ambiguous to neither the compiler or myself, I know at a  
subconscious level what I am looking at.)

However, the @property issue can be addressed without removing your sides  
optional parens. Adam Ruppe is working on just such a fix right now.

Everyone just needs to relax and take a chill pill (or a shot of whiskey  
if that's your thing).

-- 
Adam Wilson
IRC: LightBender
Project Coordinator
The Horizon Project
http://www.thehorizonproject.org/


More information about the Digitalmars-d mailing list