I am asking about this question: Why do most languages prefer complex enum instead of simple enum?

Currently, two people have voted to close it, for unknown reasons. However, I do not see why it should be closed. The question is well-behaved:

  1. It gives examples of what is it talking about.
  2. For even better clarity, it attaches textual descriptions of what those examples mean.
  3. It can be answered with real-world use cases and UX explanations.

So, if we're voting to close this question, should I vote to close other questions that I think are similar to this one (e.g. have examples, being clear, and not about basic whitespaces/choice of keywords/etc.)?


2 Answers 2


I voted to close that question because it was not clear what they meant by 'simple' and 'complex' enums. These terms have ambiguous meanings. 'Simple/complex in what regard?' I thought.

However, the question has since been edited to include examples and clarity after I cast my vote, and have since retracted.

Questions that include ambiguous or unclear terms should try their best to elaborate as to what they mean. Try to ask for clarification in the comments first, but if they cannot be understood, then they should be closed as lacking clarity. That is the purpose of the 'Needs details or clarity' close reason.

  • 1
    $\begingroup$ You could try asking for clarification in comments. Be aware that voting to close will be taken as quite hostile. The SE sites are known for breeding toxic environments, and now is the time not to create one here. $\endgroup$ Commented May 19, 2023 at 6:57
  • $\begingroup$ @AndrejBauer, now is very much the time to be voting to close, though: we're currently establishing what is and is not on topic, and during early beta, close votes are a preferred way to signal that. $\endgroup$
    – Mark
    Commented May 19, 2023 at 8:36
  • $\begingroup$ The proof assistants SE site went up earlier this year and we had a similar initial wave of odd and mostly useless general questions, but things subsided quickly. In my experience it was more important to be welcoming at the time than to try to set up criteria. The standard is actually enforced once moderators are elected, and they start doing their jobs. $\endgroup$ Commented May 19, 2023 at 12:22
  • $\begingroup$ @ice1000 counter examples $\endgroup$
    – Seggan
    Commented May 19, 2023 at 14:50
  • $\begingroup$ @Seggan yes, those are quite simple ;) $\endgroup$
    – ice1000
    Commented May 19, 2023 at 15:07
  • $\begingroup$ I should reword my first comment, replacing precollege to pre-high school. I underestimated precollege students apparently. $\endgroup$
    – ice1000
    Commented May 19, 2023 at 15:08

I did not vote to close it, but I think the question has a couple of notable flaws:

  • It uses non-standard terminology ─ what the question calls a "complex enum" is more normally called an algebraic data type, and what it calls a "simple enum" is more normally called a tagged union. I pointed this out in a comment but the OP didn't agree that the standard terminology would be better for describing their question. If the OP does not intend the question to be about algebraic data types vs. tagged unions then it's unclear what it is supposed to be about. Either way, to me a "simple enum" would be an enumerated set of values, typically consecutive integers, not what the OP uses the term for.
  • It claims that "most languages prefer" the former to the latter, but I am not sure that is actually true, and the question doesn't give examples of languages in either category. This claim should either be substantiated or it should be removed from the question. It doesn't seem like the question needs to make this claim anyway.

The OP has argued in the comments that it's OK to use non-standard terminology because the question defines the terms. My thoughts are that the terminology used in the question is misleading, and it is better to use terms which are already understood by others.

All of that said, I think the question should be fixed instead of closed, it just seems the OP doesn't want to fix it the way I suggested.

  • 1
    $\begingroup$ Clearly it's not asking about algebraic data types. It didn't even mention initial F algebras or polynomial functors. $\endgroup$
    – ice1000
    Commented May 19, 2023 at 14:14

You must log in to answer this question.

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