I found the question Why do many languages not support named parameters?

I saw that it has been closed as opinion-based. However, I would argue that this question is not really opinion based.

Is there a disadvantage of this that I'm missing? If not, why do many languages not allow this?

The question is asking about possible disadvantages, perceived by language designers, or their reasoning. Whether the perceived disadvantages or reasoning is relevant or not is opinion-based, but the question is not asking about that. Just about which possible disadvantages or reasoning that the designers happened to find relevant, which is not opinion-based. The question is in no way soliciting opinion based responses from answerers. As a comment there states, the question is more a matter or history than opinion.

  • I wrote one of the answers to the question, and reflecting on that, I shouldn't have. It contains a few objective points, but is mostly subjective preference and speculation. At most, a reasonable answer could say “this feature is difficult to design well”, but that wouldn't be very satisfactory. Answers shouldn't have to hunt down specific external resources. Answers shouldn't have to list every possible objection to this feature (too broad).
    – amon
    Commented Mar 24, 2023 at 21:51

2 Answers 2


I agree with the closure, but perhaps the reason isn't the best.

There are two pieces to the question:

  • Why do many languages not support named parameters?
  • Is there a disadvantage of this that I'm missing?

The first one is a broad, unfocused question. The only people who can answer that authoritatively are people involved with designing a given language and only for that language. Maybe someone knows of or can find discussion or a publication on why a particular language decided to not support named parameters. However, I don't see that it's likely that there's a singular, widely accepted answer that a single person can give, either with experience or by providing a reference.

The second one could possibly be a good question, but if it is a good question, it would probably be more appropriate for Computer Science. Programming language design is closer to the realm of computer science than software engineering. However, I don't have the expertise in language design to know if it's an answerable question, so I can't recommend posting it to the Computer Science Stack Exchange.


Even if we get some consensus here that the question in stake is not opinionated enough to deserve closage, I am sure after reopening it, it would immediately be closed as "needs more focus".

The issue is, this question is asking about a general statement about lots of different programming languages. One might be able to answer why a specific programming language does or does not support named parameters, and do this one-by-one by the most 50 popular languages today, but that way it would become a very, very long answer. The community has consensus here that such list-of-things questions are not a good fit for the Q&A format of the site.

Said that, I think, the question as it is now contains a detail which makes it very clearly opinionated - it is the notion of what counts as "many". Is "five" many? 50? 500? Or do we have to think in percentages of all programming languages? Do "major languages" count differently than "exotic ones"? I think to get the opinions out of this, one had to start rewording that part first.

You must log in to answer this question.