Difference between revisions of "Talk:2200: Unreachable State"

Explain xkcd: It's 'cause you're dumb.
Jump to: navigation, search
m
(Added a comment.)
Line 33: Line 33:
  
 
I rewrote the intro from a developer's perspective, since I'm pretty sure this is more about coding than about websites. Would be nice to add something about assertions there too. [[User:Hawthorn|Hawthorn]] ([[User talk:Hawthorn|talk]]) 12:37, 11 September 2019 (UTC)
 
I rewrote the intro from a developer's perspective, since I'm pretty sure this is more about coding than about websites. Would be nice to add something about assertions there too. [[User:Hawthorn|Hawthorn]] ([[User talk:Hawthorn|talk]]) 12:37, 11 September 2019 (UTC)
 +
 +
It's relatively common to include assertions for certain invariants because it can potentially allow compilers to make better optimizations, though this is usually a sign of premature optimization. [[User:Probably not Douglas Hofstadter|Probably not Douglas Hofstadter]] ([[User talk:Probably not Douglas Hofstadter|talk]]) 15:11, 11 September 2019 (UTC)

Revision as of 15:11, 11 September 2019

When I tried to go here originally, it was unreachable. 162.158.107.61 03:54, 11 September 2019 (UTC)

Yes that was really a funny coincidence, although it lasted a bit too long. --Kynde (talk) 09:37, 11 September 2019 (UTC)
Any relation to the user database breach & DDOS attacks that hit some other xkcd community this week?ProphetZarquon (talk) 15:00, 11 September 2019 (UTC)

Nothing about the comic suggests a website. it looks more like the error message of a program. also, i don't think CB is typing it, just reading. 172.68.50.124 06:20, 11 September 2019 (UTC)

Im positive you are right, Cueball's hands are hovering over the keyboard while he reads this message. The caption is a note to programers not to leave this kind of message to users by writing them when tired. I will correct the explanation and the transcript. --Kynde (talk) 09:45, 11 September 2019 (UTC)
"Can't happen"

This comic is not about "a problem that the programmers did not anticipate", but rather a situation that the programmer rules out as impossible, which is technically called "Can't happen" or "Impossible Error" in the hacker/programmer's jargon. See http://catb.org/jargon/html/C/can-t-happen.html

For example:

for ($i=1;$i<=5;++$i) {echo $i." - ";}
if ($i<10) {echo "Bye!";} else {echo "Can't happen!";}

ElfQrin (talk) 07:14, 11 September 2019 (UTC)

Also it helps not to be too cute even with impossible error messages. A colleague left a message along the lines of Application rubbish bin has broken. once. Cue a somewhat perplexed user call several years later…

“Scientists have calculated that the chances of something so patently absurd actually existing are millions to one. But magicians have calculated that million-to-one chances crop up nine times out of ten.”

Who is genuinely surprised that Cueball managed to reach the unreachable error condition?

― Terry Pratchett, Mort

--Kventin (talk) 07:51, 11 September 2019 (UTC)

Do you mean "garbage collector"? Because that's not being cute, that's the actual technical term. 162.158.122.30 13:24, 11 September 2019 (UTC)

The "anything can happen" may be reference to undefined behavior in some programming languages (most famous are C and C++) https://en.wikipedia.org/wiki/Undefined_behavior. And the error message is rather about assertion failure https://en.wikipedia.org/wiki/Assertion_(software_development) 162.158.92.54 08:03, 11 September 2019 (UTC)

I rewrote the intro from a developer's perspective, since I'm pretty sure this is more about coding than about websites. Would be nice to add something about assertions there too. Hawthorn (talk) 12:37, 11 September 2019 (UTC)

It's relatively common to include assertions for certain invariants because it can potentially allow compilers to make better optimizations, though this is usually a sign of premature optimization. Probably not Douglas Hofstadter (talk) 15:11, 11 September 2019 (UTC)