Editing 292: goto
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 8: | Line 8: | ||
==Explanation== | ==Explanation== | ||
− | ''{{w|Goto}}'' is a construct found in many computer languages that causes control flow to go from one place in a program to another, without returning. Once common in computer programming, its popularity diminished in the 1960s and 1970s as focus on {{w|structured programming}} became the norm. {{w|Edsger W. Dijkstra}}'s article [ | + | ''{{w|Goto}}'' is a construct found in many computer languages that causes control flow to go from one place in a program to another, without returning. Once common in computer programming, its popularity diminished in the 1960s and 1970s as focus on {{w|structured programming}} became the norm. {{w|Edsger W. Dijkstra}}'s article [http://www.u.arizona.edu/~rubinson/copyright_violations/Go_To_Considered_Harmful.html "Go To Statement Considered Harmful"] in particular contributed to the decline of ''goto.'' |
− | Often | + | Often people learning programming are told ''goto'' is bad and should be avoided, but frequently are not given a good reason. [[Cueball]], as one of these people, sees no harm in using ''goto'' to avoid rewriting much of his program. As a result, he is attacked by a [[velociraptor]]. Velociraptor attacks are a running joke (and fear) often expressed in [[xkcd]]. The humor derives from the fact that a velociraptor attack is an {{tvtropes|WhatCouldPossiblyGoWrong|unexpected and severe consequence}} of using a ''goto'' statement, let alone that velociraptors have been extinct since the Cretaceous Period.{{Citation needed}} |
− | + | The title text refers to {{w|Neal Stephenson}}, an author of cyberpunk novels. A label is used in many programming languages to refer to a point in a program that a goto instruction can jump to. The joke is that one of Stephenson's characters in ''{{w|Cryptonomicon}}'' is named Goto Dengo. When said out loud, "Dengo" sounds like "Then go." | |
− | |||
− | The title text refers to {{w|Neal Stephenson}}, an author of cyberpunk novels. A label is used in many programming languages to refer to a point in a program that a goto instruction | ||
==Transcript== | ==Transcript== | ||
:[Sideways view of Cueball sitting at computer, thinking.] | :[Sideways view of Cueball sitting at computer, thinking.] | ||
− | :Cueball: I could restructure the program's flow | + | :Cueball: I could restructure the program's flow - or use one little 'GOTO' instead. |
− | |||
− | |||
− | |||
:Cueball: Eh, screw good practice. How bad can it be? | :Cueball: Eh, screw good practice. How bad can it be? | ||
:Text on computer: <tt>goto main_sub3;</tt> | :Text on computer: <tt>goto main_sub3;</tt> | ||
:<nowiki>*Compile*</nowiki> | :<nowiki>*Compile*</nowiki> | ||
− | |||
:[We now have a view from behind Cueball. Cueball looks at the computer.] | :[We now have a view from behind Cueball. Cueball looks at the computer.] | ||
− | |||
:[A raptor jumps into the panel, pushing Cueball off his chair.] | :[A raptor jumps into the panel, pushing Cueball off his chair.] | ||