303: Compiling

Explain xkcd: It's 'cause you're dumb.
(Difference between revisions)
Jump to: navigation, search
m (fix date according to http://www.xkcd.com/archive/)
Line 1: Line 1:
| number    = 303
| number    = 303
| date      = August 12, 2007
| date      = August 15, 2007
| title    = Compiling
| title    = Compiling
| image    = compiling.png  
| image    = compiling.png  

Revision as of 18:59, 23 February 2013

Are you stealing those LCDs?' 'Yeah, but I'm doing it while my code compiles.
Title text: Are you stealing those LCDs?' 'Yeah, but I'm doing it while my code compiles.


Simply writing source code is not sufficient: you need to turn the source code into something executable. Programming languages implement two ways: compilers and interpreters. While interpreters convert the line of code that is currently running, compilers convert the source code all at once, which takes a lot of time... time for you to goof off.

Ambox notice.png This explanation may be incomplete or incorrect:
Please include the reason why this explanation is incomplete, like this: {{incomplete|
If you can address this issue, please edit the page! Thanks.


Title: The #1 Programmer Excuse for Legitimately Slacking Off: “My code's compiling.”
[Two programmers are sword-fighting on office chairs in a hallway. An unseen manager calls them back to work through an open office door.]
Manager: Hey! Get back to work!
Programmer 1: Compiling!
Manager: Oh. Carry on.
comment.png add a comment! ⋅ Icons-mini-action refresh blue.gif refresh comments!


I was sooo amused when I heard about the most common error report when Delphi was released to the linux platform: "the compile button doesn't do anything"...

The "fix" was to introduce a checkbox that defaulted to not close the compile window once complete :-)

For being so open-sourced they are quite close-minded ;-)

Usually interpreters don't create any code but use the source language as instructions to the interpreter. The situation is complicated by the existence of compilers which compile to an intermediate code (Java byte code for example), then compile the byte code to machine code.

Jstout (talk) 21:54, 13 December 2013 (UTC) 07:04, 10 November 2013 (UTC)Nicklas

(In response to the JavaByte thing, whoever said that) I just revamped the explanation (because it looked like two different explanations mashed together). Now it's not repetitious, but longer than I had intended it to be. It would have been even longer had I gone into Java, so I left that out. However, I would say that Java (human writable) source code is 'compiled' into Javabyte code, which is then 'interpretted' by the Java Engine on the end-user's machine. But the original compilation puts it in an easier-to-interpret form than any human-written version would be, even whilst being still flexible across differing platforms. However, it can be a fuzzy line, these days, what exactly does what. YMMV. 00:30, 8 September 2015 (UTC)

"Liquid Crystal Display Displays" This bothers me. 19:59, 13 March 2014 (UTC)

https://en.wikipedia.org/wiki/RAS_syndrome -- Wesha (talk) 19:36, 11 May 2015 (UTC)
Made it into a wiki link and removed Displays. Kynde (talk) 20:10, 28 March 2014 (UTC)
Personal tools


It seems you are using noscript, which is stopping our project wonderful ads from working. Explain xkcd uses ads to pay for bandwidth, and we manually approve all our advertisers, and our ads are restricted to unobtrusive images and slow animated GIFs. If you found this site helpful, please consider whitelisting us.

Want to advertise with us, or donate to us with Paypal?