Jul 20 update: question has been unlocked per discussion in chat and reworded as follows:
Looking for a definitive answer from a primary or secondary source for why did (notably) Java and C# decide to have a static method as their entry point – rather than representing an application instance by an instance of an
Applicationclass, with the entry point being an appropriate constructor?
...
- Feedback on revised wording would be much appreciated.
I asked a question about the historical perspective of a feature in C# and Java.
It was closed as "not constructive". Needless to say, I disagree. But more importantly, I don’t understand the reasons. I fail to see what distinguishes this question from, say, "Why does F# have an interactive mode but not C#?"
In fact, I was hoping for the same kind of answer. The latter question had the enormous luck of having Eric Lippert answer it authoritatively – but the same kind of answer would fit my own question perfectly.
So what’s the criterion here? Was I just unlucky / the other question lucky? Or is there a distinction that I fail to see? Or could I improve the way the question is asked? I’d be more than happy to.
-
6Playing devil's advocate: Part of the problem is that most of the answer is in your question. You start of by showing the discussions that have happened before, essentially invalidating all of them, and take the position that, because those other viewpoints are wrong, that there must be some more plausible (to you) underlying explanation, rather than the one that satisfies Occam's Razor. In a way, you are the one begging the question. But a confined discussion is still a discussion.Robert Harvey– Robert Harvey2012年07月10日 22:06:24 +00:00Commented Jul 10, 2012 at 22:06
-
@Robert Yes to the first part – but see my comment on Chris’ answer below for the reasons for that. I’m not convinced by those answers because they rely on plain factual errors (but that doesn’t necessarily make them the wrong answers). So far, Voo’s answer convinces me the most. But either way, what I was always interested in is not speculation but a referenced answer.Konrad Rudolph– Konrad Rudolph2012年07月10日 22:15:46 +00:00Commented Jul 10, 2012 at 22:15
-
1@Robert By the way, I understand how the question could be understood as argumentative. I originally feared that if I didn’t shoot down these "arguments", the question would be immediately closed as a duplicate of the referenced one, which wouldn’t help me. In the meantime, Robert Harvey reminded me that I can just offer a bounty on the existing question (which I did), but by that time the question had been migrated.Konrad Rudolph– Konrad Rudolph2012年07月10日 22:18:16 +00:00Commented Jul 10, 2012 at 22:18
3 Answers 3
It had a couple of close votes and a flag - hence my final close vote. However, if it hadn't attracted the flag I wouldn't have closed.
You can (and should) vote to reopen and perhaps look again at the language you used in the question. It could be that the voters and flaggers were under the impression that you were after a discussion rather than something concrete. Unfortunately because of the migration and subsequent close the question is locked.
In that case I'll reopen it, but if it attracts new close votes and/or flags it's likely to get closed again.
-
Sounds reasonable. I had hoped that the bolded sentence would make it clear that I wasn’t after a discussion. Unfortunately, this subject seems inherently fickle, as evidenced from the many (by my assessment) pseudo-answers. It’s hard to provide some rationale for the question without coming over as argumentative, since the background entails addressing those existing arguments.Konrad Rudolph– Konrad Rudolph2012年07月10日 22:09:42 +00:00Commented Jul 10, 2012 at 22:09
-
4@KonradRudolph Getting a lot of pseudo-answers (assuming your assessment is valid), is a strong hint of a poorly defined and / or quite open ended (thus: not constructive) question. I'd say yours is borderline and could go either way. Lets wait and see how it turns out.2012年07月10日 22:19:44 +00:00Commented Jul 10, 2012 at 22:19
-
@Yannis True. I had somewhat hoped for an answer from one of the people originally involved (maybe from Eric? though his would probably be "because we copied Java").Konrad Rudolph– Konrad Rudolph2012年07月10日 22:21:11 +00:00Commented Jul 10, 2012 at 22:21
update question has been edited and reopened and proposed "draft" has been posted as an answer there:
Prior answer revision is removed since it no longer applies, it is available in answer history:
- Revision 8
If the question would be reopened, I'd probably write an answer like below.
TL;DR
In Java, the reason of
public static void main(String[] args)is that- Gosling wanted
- the code written by someone experienced in C (not in Java)
- to be executed by someone used to running PostScript on NeWS
...How The JVM Spec Came To Be ...
-
1Haha, this answer is awesome. Not only does it have Jon Lord, it actually comes damn close to what I would have hoped to get.Konrad Rudolph– Konrad Rudolph2012年07月19日 06:54:31 +00:00Commented Jul 19, 2012 at 6:54
-
2I'd gladly vote this up if it were an answer on the actual question ...Joachim Sauer– Joachim Sauer2012年07月19日 11:21:36 +00:00Commented Jul 19, 2012 at 11:21
-
@KonradRudolph thanks. what would be your take on question edit suggested in the chat? mods say for this case, Q needs edit to reopen (turns out there was a closeopenwar triggered by its current wording)gnat– gnat2012年07月19日 13:19:15 +00:00Commented Jul 19, 2012 at 13:19
-
1@gnat Good luck with that. I don’t object to the edit. But I think people primarily object to my a priori rejection of certain answers (which I understand, but I did that because those are just ridiculously wrong, and I wanted to avoid what’s happened to a similar class on Stack Overflow, where every second answer made the same, stupid argument). If the question were opened, I’d gladly accept your answer.Konrad Rudolph– Konrad Rudolph2012年07月19日 19:09:59 +00:00Commented Jul 19, 2012 at 19:09
-
@JoachimSauer there you go, answer has been "ported" from here to actual question: programmers.stackexchange.com/a/157606/31260gnat– gnat2012年07月20日 16:17:42 +00:00Commented Jul 20, 2012 at 16:17
Reworded slightly better but still not a good Q & A format question
@KonradRudolph this is reworded slightly better, and slightly more on topic on programmers, but still comes off as your ranty opinion on why ( in your opinion ) why others made mistakes in these implementations you asking for justifications for other peoples design choices and decisions that can't be answered definitively. If they could it would be very easily Googled, which you would of already found the answer quickly, therefore all this is going to generate, even on programmers is speculation and supposition ( this is what all the answers currently are ) and no true answer.
Comments to the contrary of the claimed intent in the question:
In a comment to this answer:
"As I said, I’m not convinced by that at all. Objects do get instantiated before, and code gets executed before. It’d need a quote from one of the original developers to convince me that this was the reason."
this comment from an answer below kind of proves you aren't going to get the answer you want unless you contact the original designers in question, anyone else is going to be speculating; this is still not constructive and off topic even with the attempt at re-wording it.
And other comments are just more discussion arguments on why the OP doesn't buy the answer/argument. Matter of fact, all the comments are just arguments support or "debunking" complaints even on the deleted question. I would vote to close again if I could.
"@Yannis True. I had somewhat hoped for an answer from one of the people originally involved (maybe from Eric? though his would probably be "because we copied Java")."
Then mail the people that did what they did, why do you think polling here will provide the answer you are looking for?
The following quote from the re-worded answer are just unqualified opinion:
"... the following answers don’t satisfy me, as I deem them incorrect: ..."
Here is the only viable answer I could come up with, I avoided putting it the actual question so as not to contribute to the noise there, but meta is about noise right :-)
-
2You are implying that I think the design is a mistake. I don’t, I just find it puzzling. But I don’t think it has any disadvantages. As for rejecting my comment about the incorrect answer as an "unqualified opinion", sorry, I fear we will find no common ground here. I simply don’t agree that this is an opinion, the answer is objectively wrong, since it cites technical reasons which are demonstrably false.Konrad Rudolph– Konrad Rudolph2012年07月11日 06:50:54 +00:00Commented Jul 11, 2012 at 6:50
-
4Furthermore, I’m not "polling" people. But this is a q’n’a platform, right? So why not ask questions here that have a pretty high chance of being seen by the relevant people, or by people who happen to possess a secondary source? This works well for similar questions with authoritative answers. As for mailing people, I do not appreciate unsolicited mails with questions, unless absolutely necessary. I imagined other people felt the same.Konrad Rudolph– Konrad Rudolph2012年07月11日 06:55:02 +00:00Commented Jul 11, 2012 at 6:55
-
look at your own words that I quoted "... I deem them incorrect ... " that is opinion, and you don't qualify it with any reasoning or citation at all. The Dude says it straight, it is your opinion. A polling question is "Hey everyone on stackoveflow/programmers, what do you think about this?" that is how this question reads to begin with, and the re-wording, however valiant an attempt to correct that, is just a paraphrasing and still in that vein of questioning. The FAQ is pretty specific about the narrow subjective part of this sites charter. Where SO is a no subjective charter.user7519– user75192012年07月11日 07:06:56 +00:00Commented Jul 11, 2012 at 7:06
-
3Blame politeness (well ...). What I meant is: "They’re incorrect." Not an opinion, a statement of facts. I did cite reasons, despite what you said (for instance, I showed code which created objects before
mainwas executed). With the polling thingy, you are just putting words in my mouth. I did not say, nor imply, "hey, what do you think about that?" I am not interested in opinions, I agree that this would be non-constructive.Konrad Rudolph– Konrad Rudolph2012年07月11日 09:25:29 +00:00Commented Jul 11, 2012 at 9:25
You must log in to answer this question.
Explore related questions
See similar questions with these tags.