In the new D release why use free functions instead of properties?

Jonathan M Davis via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Mon Aug 18 14:17:09 PDT 2014


On Monday, 18 August 2014 at 21:02:09 UTC, Gary Willoughby wrote:
> In the new D release there have been some changes regarding 
> built-in types.
>
> http://dlang.org/changelog.html?2.066#array_and_aa_changes
>
> I would like to learn why this has been done like this and why 
> it is desired to be free functions rather than properties?

Probably because they never should have been properties in the 
first place. Properties are supposed to emulate variables, 
whereas something like dup is clearly an action. So, it's clearly 
not supposed to be a property. However, because D doesn't require 
parens on a function with no arguments, you can still call it 
without parens. Some of the changes probably also help with 
cleaning up the AA internals, which is sorely needed.

- Jonathan M Davis


More information about the Digitalmars-d-learn mailing list