My question was closed as "ambiguous, vague, incomplete, overly broad, or rhetorical".

It could easily be seen that none of these attributes are applicable to the question:

According to ECMA-262, part 11.13, following is the exhaustive list of compound assignment operators...

...It seems that compound assignment operator ||= would be really useful, allowing to write the code above in a shorter and cleaner fashion: a ||= b. However, it is not there (although *=, += and other compound assignment operators are).

The question is, why?

It was said later in the discussion, that "why" questions considering language design / specifications are not allowed on Stack Overflow. Is this right, or is there some other reason why my question had to be closed?

  • 13
    You're right. It should've been closed as "not constructive".
    – JJJ
    Mar 6, 2013 at 8:55
  • 2
    @Juhana I don't see it fitting "not constructive" definition either.
    – penartur
    Mar 6, 2013 at 8:57
  • 2
    Highly related: meta.stackexchange.com/q/165952/179419 Mar 6, 2013 at 9:05
  • 15
    It is certainly non-constructive, since none of us designed the language. You said yourself: you aren't trying to solve a problem by asking, so it does not fit the site FAQ, either. Mar 6, 2013 at 9:06
  • 9
    It's been traditional to close this type of question as not-constructive because the probable acceptable answers will be wild guesses... "this question will likely solicit debate, arguments, polling, or extended discussion". I don't disagree with this analysis; but I think these questions should remain open but the community be a lot more strict about deleting answers that state something without objective proof. Mar 6, 2013 at 9:07
  • 1
    That could be interesting to do. A bit of answer moderation involved, of course. Mar 6, 2013 at 9:09
  • 5
    One important note I feel I need to make, however, on one of your comments in the thread below your question: "There is a plenty of "Why ..." questions in the "Related" section, and none is nominated to close as far as I can see." This is not really valid reasoning since the site is over four years old and policies change. Questions should be judged by policy alone, not including the author, not including other questions. Just that question.
    – J. Steen
    Mar 6, 2013 at 9:26
  • 1
    Not someone's - some of the community's belief. Because we are a huge, living body, policy is formed by that living body and sometimes it's not always written down. The community reaches a general consensus on what's acceptable - which changes over the years. It takes five to tango on SO. I admit, I was in on the dance and I still believe I was in the right for the reason I already commented in your question itself. I have however not voted to close again, for reasons that Ben stated above. I like his idea.
    – J. Steen
    Mar 6, 2013 at 9:55
  • 2
    You're also being very constructive about this discussion, which is always appreciated.
    – J. Steen
    Mar 6, 2013 at 9:57
  • 4
    @AndrewBarber There is a lot of people who designed the language, a lot of people who designed the specs, and a lot of people who was in some way connected with the aforementioned two groups. Eric Lippert, for example, often answers C#-related questions. I did not intend to provoke some kind of debate, the only thing I wanted is to get an objective answer from someone who has the required knowledge. Isn't this what Stack Overflow is for?
    – penartur
    Mar 6, 2013 at 9:57
  • 3
    By the way, this StackOverflow questions is similar to mine (meaning it is also "why" and the objective answer could also be given only by someone with the deep knowledge of reasons behind language design). It was answered by one of the people behind C# compiler design, and both question and answer are quite popular, judging by the number of upvotes. If such a question was asked today, not a year ago, would it be subject to close by this new rules / conventions?
    – penartur
    Mar 6, 2013 at 10:03
  • 1
    Probably, I'm sad to say. Maybe that does need to change. Again.
    – J. Steen
    Mar 6, 2013 at 11:05
  • 3
    It is like a reverse-bikeshed question. There are way too many SO users that understand what you ask but don't know the answer. And too many that don't have a clue but post anyway, keeping the moderators too busy. And yes, it does depend on the [tag]. Common in [c++] and [c#] with guys like Pete Becker and Eric Lippert answering them, experts that were actually involved in the language design. I'd guess that [javascript] doesn't have the same kind of expert backup. Chicked-and-egg perhaps, no reason for them to show up when the questions get closed. And they are easy to close. Mar 6, 2013 at 13:03
  • 2
    @penartur: you're probably interested in this Meta question from The Right Honorable Eric Lippert himself. My answer there was basically, "without Eric's involvement the question has no merit, if we'd all like to play the guessing game we can join a forum or start a blog."
    – user7116
    Mar 6, 2013 at 14:28
  • 1
    @pen so, you want a response from all of those people? Because that's the only way to get a fully accurate answer, since individual opinions may vary. And still... there is no practical problem solved there. Mar 6, 2013 at 20:47

2 Answers 2


I personally think it's a really cool question. It's well written, it explores an area of the language that may not be as well understood as it could be, and it has the potential to give insight into the language. That having been said, it's not a good question for Stack Overflow.

As was sussed out by a highly related question, the problem with your question is that it's idle curiousity.

The criteria for asking a question include (From the FAQ):

  • a specific programming problem
  • practical, answerable problems that are unique to the programming profession

and then later (emphasis added):

You should only ask practical, answerable questions based on actual problems that you face.

If your question doesn't address an actual problem you face, it's probably not going to stay open. There are plenty of places to ask questions about why a language designer decided to do things a certain way, but Stack Overflow is not and should not be one of them.

Why, you ask?

Stack Overflow is a repository for useful programming knowledge whose purpose is to help people solve the everyday problems they face.

It is not a "Quora" or a "Reddit" or a "Hacker News" or even a "Slant.co". It is not a place just talk about languages. It's a place for solving problems.

If you can rephrase the question in such a way that there's an actual problem for us to solve, then that question would undoubtedly be on topic and constructive. However, the question as written is not.

To put it succinctly: Stack Overflow is not a hammer, and every question about programming is not a nail.

Edit: That question was migrated to Programmers after a very helpful flag. Since I can't show you the flag itself, I'll paraphrase it, with what made the flag helpful:

Please migrate this to Programmers.SE. It is on topic and is considered constructive there (see this P.SE Meta question for more detail): Is programming history on topic?

That is how you flag for migration. Most of the time, we're not going to migrate unless:

  1. It's clear from our experience that the question is on topic for the site it should be migrated to (this is harder than you think).
  2. A moderator from that site flags the question and asks us to migrate it to their site.
  3. Someone provides us with an authoritative response as to why it's on topic there (usually by referencing that site's meta).
  • 4
    "As was sussed out by a highly related question, the problem with your question is that it's idle curiousity." That's a bit of a fallacy isn't it? It was a discussion without consensus and answers suggesting that these should be closed without thought aren't exactly in the ascendency. Mar 6, 2013 at 16:16
  • @benisuǝqbackwards Consensus is what we make it. Votes are part of that. The other part is to keep doing what we're doing, and keep the message consistent. If the community has a problem with how moderation is going, you can be sure that the way we moderate will change. Also, if Stack Exchange Internet Services has a problem with how the moderation is going, they'll ask the Community Team to step in and change things. As it stands, neither of those has happened, so we're going to Keep On Keepin' on. Mar 6, 2013 at 16:22
  • My comment wasn't about the current consensus @George (whether I agree with it or not), rather your description of the "consensus" reached in the linked question. Mar 6, 2013 at 17:15
  • @GeorgeStocker What I'm getting form your rule-quoting is that only directly-applicable questions are relevant on StackOverflow, and questions meant to facilitate a broader understanding are not. In other words, this isn't a place to learn, it's a giant user-manual. If I'm wrong, can you explain how?
    – Rob Truxal
    Jun 1, 2018 at 20:28

The main question is a candidate for migration to Programmers albeit not without some degree of contention.

Please see this MP.SE question for more details on the rationale. Short version: current consensus is that well constructed historical questions are on-topic.

Update question has been migrated to Programmers:

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .