Property rewriting; I feel it's important. Is there still time?

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Wed Mar 10 08:43:52 PST 2010


On 03/10/2010 09:12 AM, retard wrote:
> Wed, 10 Mar 2010 08:53:57 -0600, Andrei Alexandrescu wrote:
>
>> On 03/10/2010 04:38 AM, retard wrote:
>>> Wed, 10 Mar 2010 10:05:03 +0000, retard wrote:
>>>
>>>> This is so unbelievable. I knew the property stuff was being
>>>> redesigned since there was so much talk in the ng some time ago. But
>>>> even now, why on earth doesn't it work like it should. Is it so hard
>>>> to copy/steal the good ideas from the better languages. Guess how
>>>> C#/Scala solved this - I bet having a PhD helps getting things right
>>>> the first time..
>>>>
>>>>
>>> Heh, after noticing the thread name "D hates to be dynamic linked" I
>>> should have probably renamed this thread with a funnier name such as "D
>>> stubbornly refuses to learn from mistakes and follow the principles of
>>> good language design".
>>>
>>> It took C# 4 years to get properties right. That period also included
>>> finishing a complete language specification document, totalling almost
>>> 500 pages. The property feature wasn't present in Pizza (2002), but
>>> Scala (2004 ->) had it. It was taken D 11 years to fail again and again
>>> miserably.
>>
>> I am having difficulty understanding what you are trying to convey.
>>
>> Andrei
>
> People very rarely find any issues worth complaining in the property
> system implementations of those languages. I also forgot to mention
> Object Pascal. Does this mean that C#/Scala/Pascal users are just
> complaining less or are their property systems just better? When a new
> system is adopted by D, does anyone really analyze the large body of
> existing work done on the field. We don't live in a dark and closed
> barrel, we can learn from others and try to avoid common problems.

Absolutely. A good way to go about that is to raise the issue herein and 
in bugzilla and also at best contribute patches that implement the 
improvements.

There are some ways to go about improving things that are scraping the 
bottoms of some dubious barrels, and almost guaranteed to do more harm 
than good (primarily by making the perpetrator look like a fool). 
Latching on an obvious troll to make a point comes to mind. Also, I have 
difficulty understanding the concept of attempting to make Walter bad 
for not having a PhD, while at the same time relying on anonymity to 
cover insecurity about one's own achievements. One other thing that 
comes to mind is oscillating between being reasonable, then insulting, 
then apologetic, and then rinse lather and repeat. The logic is 
difficult to follow. Why bother apologizing if reenactment is a given?

Getting to the topic at hand, there are two sides to the coin. D got 
right several things that other language authors are still scratching 
their heads about, such as proper integration of immutability with 
mutability, an expressive generics system, lightweight concepts, 
integration of interpretation with compilation, value range propagation 
in integral expressions, and I dare say concurrency. (I remember an 
interview with Hejlsberg and a colleague (Bentley?) in which he said 
they're having major headaches about modeling immutable data.) That 
doesn't make the authors of those languages incult or boneheaded. A 
language is a large ecosystem that makes it rather difficult to choose 
what to get busy with at any given time.

Generalizing from one awkwardness (I agree that properties could receive 
more attention) to the entire language and even the author is not 
something anyone should be proud of.


Andrei



More information about the Digitalmars-d mailing list