DIP 1019--Named Arguments Lite--Final Review

Andre Pany andre at s-e-a-p.de
Fri Aug 23 20:19:49 UTC 2019


On Friday, 23 August 2019 at 15:01:20 UTC, Andrei Alexandrescu 
wrote:
> 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.

To stress these points, IntelliJ IDEA has the possibility to show 
the function arguments name while reading source code (it isn't 
implemented for D). Other IDEs maybe provide something similar.

What I want to say: The current scope of the DIP does only hard 
code what a good IDE is able to provide on the fly.

I really miss the possibility to skip optional parameters.

Kind regards
Andre



More information about the Digitalmars-d mailing list