DIP 1019--Named Arguments Lite--Final Review

Andrei Alexandrescu SeeWebsiteForEmail at erdani.com
Fri Aug 23 15:01:20 UTC 2019


On 8/23/19 6:54 AM, Mike Parker wrote:
> DIP 1019, "Named Arguments Lite", is now ready for Final Review. This is 
> the last chance for community feedback before the DIP is handed off to 
> Walter and Átila for the Formal Assessment.
> 
> Anyone intending to post feedback in this thread is expected to be 
> familiar with the reviewer guidelines:
> 
> https://github.com/dlang/DIPs/blob/master/docs/guidelines-reviewers.md
> 
> The current revision of the DIP for this review is located here:
> 
> https://github.com/dlang/DIPs/blob/3bc3469a841b87517a610f696689c8771e74d9e5/DIPs/DIP1019.md 
> 
> 
> In it you'll find a link to and summary of the previous review rounds. 
> This round of review will continue until 11:59 pm ET on September 6 
> unless I call it off before then.
> 
> Thanks in advance for your participation.

The DIP is well researched and clearly written. Kudos.

Sadly I oppose it on the following grounds:

"Named arguments proposed by this DIP have no effect on the ordering of 
arguments in function calls."

"Named arguments proposed by this DIP do not allow default parameters to 
be skipped."

These two limitations are as useful and help each other as much as a 
nausea and a cough.

Large parameter lists of which most have reasonable defaults is a 
marquee use case of named arguments. A proposal that works itself out of 
that opportunity cannot and should not be acceptable.

I was unconvinced by the argument that these can be added later. 
Language design is peculiar in that incrementalism doesn't work well - 
it must come all at once. There are exceptions and arguments that can be 
made but there's overwhelming evidence that incremental language design 
is just not a good way to go about things.


More information about the Digitalmars-d mailing list