Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'm also upset at Niklaus Wirth because how he sensationalized Dijkstra's article "A Case Against the Goto Statement" by taking the liberty to change its title to "Goto Statement Considered Harmful", causing a lifelong disproportionate stigma against goto and relevant programming constructs like switch/case, break, continue, etc. Dijkstra had never intended to take such a purist stance against Goto. I also mention this in my book Street Coder.


From the opening paragraph of Edsger W. Dijkstra's letter to the CACM editor:

More recently I discovered why the use of the go to statement has such disastrous effects, and I became convinced that the go to statement should be abolished from all "higher level" programming languages (i.e. everything except, perhaps, plain machine code).

"Harmful" seems to me a perfectly appropriate characterization of the words "disastrous" and "abolished". If anything, it tones them down.


Similarly, "A case against" is way more toned down than "harmful." I agree that the opening statement is a strong stance and fits to the new title, but the article mostly focuses on proliferation of goto as a generic flow-control construct rather than exceptional such as using it as a "defer"-like construct in C where there's no alternative. I still think Wirth's edits hid the nuances in the article and helped fostering a strongly opionated dogma against goto by gifting a slogan to the masses.


? That was Edsger Dijkstra's article, if I recall correctly.

The standard joke is "Europeans refer to him by reference, as Nicklaus Wirth, and Americans - by value, as Nickel's Worth."


It was Dijkstra's article, but he submitted it with the title "A case against the Go To statement". Wirth was the journal editor and he choose to rename it to "Go To statement considered harmful".

Knuth ties into this because he published a response "Structured Programming with go to Statements", examining many situations where goto statements are hard to avoid in the standard structured programming paradigm.


GGP had originally referred to the author of the article as Knuth, GP (and I) both replied correcting that. GGP comment has since been edited.


Yes, I'd meant Dijkstra where I said Knuth despite that Knuth might still be relevant. I got this right in the book, no worries. :)


Yes my bad. Edited, thanks!


Not Knuth. Dijkstra.


You're right edited it now, thanks!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: