DIP28, on properties, availabel for destruction as well

deadalnix deadalnix at gmail.com
Sat Mar 2 08:22:47 PST 2013


On Saturday, 2 March 2013 at 16:00:55 UTC, Timon Gehr wrote:
> On 02/27/2013 04:46 PM, deadalnix wrote:
>> Here come the sister of DIP27 : DIP28 
>> http://wiki.dlang.org/DIP28 .
>>
>> It address specifically properties. A 3rd one is coming on 
>> delegate. As
>> for DIP27, the goal is to go aggressively for simplicity.
>
> Ignoring complexities and complications is not called 
> simplicity, it's simplism.
>
> DIP27 s a simplistic subset of DIP24.

DIP24 and DIP28 are very similar in regard of property, that is 
exact. (As it is in DIP28 topic, I assume that you meant DIP28).

Main difference I see :
  - Introduction of __traits(propertyAccessors, propertySymbol) . 
This is loosely correlated to the content of each DIP. Both can 
do with or without.
  - typeof(__traits(propertyAccessors, prop)(exp)) is void and its 
result is used. I don't see the point of special casing this. It 
increase complexity and reduces what you can express.

It is unclear what happen when the property is aliased or passed 
as alias parameter in both DIP, and should be effectively 
corrected.


More information about the Digitalmars-d mailing list