skip to main | skip to sidebar

Thursday, May 7, 2009

A Brief, Incomplete, and Mostly Wrong History of Programming Languages

1801 - Joseph Marie Jacquard uses punch cards to instruct a loom to weave "hello, world" into a tapestry. Redditers of the time are not impressed due to the lack of tail call recursion, concurrency, or proper capitalization.

1842 - Ada Lovelace writes the first program. She is hampered in her efforts by the minor inconvenience that she doesn't have any actual computers to run her code. Enterprise architects will later relearn her techniques in order to program in UML.

1936 - Alan Turing invents every programming language that will ever be but is shanghaied by British Intelligence to be 007 before he can patent them.

1936 - Alonzo Church also invents every language that will ever be but does it better. His lambda calculus is ignored because it is insufficiently C-like. This criticism occurs in spite of the fact that C has not yet been invented.

1940s - Various "computers" are "programmed" using direct wiring and switches. Engineers do this in order to avoid the tabs vs spaces debate.

1957 - John Backus and IBM create FORTRAN. There's nothing funny about IBM or FORTRAN. It is a syntax error to write FORTRAN while not wearing a blue tie.

1958 - John McCarthy and Paul Graham invent LISP. Due to high costs caused by a post-war depletion of the strategic parentheses reserve LISP never becomes popular[1]. In spite of its lack of popularity, LISP (now "Lisp" or sometimes "Arc") remains an influential language in "key algorithmic techniques such as recursion and condescension"[2].

1959 - After losing a bet with L. Ron Hubbard, Grace Hopper and several other sadists invent the Capitalization Of Boilerplate Oriented Language (COBOL) . Years later, in a misguided and sexist retaliation against Adm. Hopper's COBOL work, Ruby conferences frequently feature misogynistic material.

1964 - John Kemeny and Thomas Kurtz create BASIC, an unstructured programming language for non-computer scientists.

1965 - Kemeny and Kurtz go to 1964.

1970 - Guy Steele and Gerald Sussman create Scheme. Their work leads to a series of "Lambda the Ultimate" papers culminating in "Lambda the Ultimate Kitchen Utensil." This paper becomes the basis for a long running, but ultimately unsuccessful run of late night infomercials. Lambdas are relegated to relative obscurity until Java makes them popular by not having them.

1970 - Niklaus Wirth creates Pascal, a procedural language. Critics immediately denounce Pascal because it uses "x := x + y" syntax instead of the more familiar C-like "x = x + y". This criticism happens in spite of the fact that C has not yet been invented.

1972 - Dennis Ritchie invents a powerful gun that shoots both forward and backward simultaneously. Not satisfied with the number of deaths and permanent maimings from that invention he invents C and Unix.

1972 - Alain Colmerauer designs the logic language Prolog. His goal is to create a language with the intelligence of a two year old. He proves he has reached his goal by showing a Prolog session that says "No." to every query.

1973 - Robin Milner creates ML, a language based on the M&M type theory. ML begets SML which has a formally specified semantics. When asked for a formal semantics of the formal semantics Milner's head explodes. Other well known languages in the ML family include OCaml, F#, and Visual Basic.

1980 - Alan Kay creates Smalltalk and invents the term "object oriented." When asked what that means he replies, "Smalltalk programs are just objects." When asked what objects are made of he replies, "objects." When asked again he says "look, it's all objects all the way down. Until you reach turtles."

1983 - In honor of Ada Lovelace's ability to create programs that never ran, Jean Ichbiah and the US Department of Defense create the Ada programming language. In spite of the lack of evidence that any significant Ada program is ever completed historians believe Ada to be a successful public works project that keeps several thousand roving defense contractors out of gangs.

1983 - Bjarne Stroustrup bolts everything he's ever heard of onto C to create C++. The resulting language is so complex that programs must be sent to the future to be compiled by the Skynet artificial intelligence. Build times suffer. Skynet's motives for performing the service remain unclear but spokespeople from the future say "there is nothing to be concerned about, baby," in an Austrian accented monotones. There is some speculation that Skynet is nothing more than a pretentious buffer overrun.

1986 - Brad Cox and Tom Love create Objective-C, announcing "this language has all the memory safety of C combined with all the blazing speed of Smalltalk." Modern historians suspect the two were dyslexic.

1987 - Larry Wall falls asleep and hits Larry Wall's forehead on the keyboard. Upon waking Larry Wall decides that the string of characters on Larry Wall's monitor isn't random but an example program in a programming language that God wants His prophet, Larry Wall, to design. Perl is born.

1990 - A committee formed by Simon Peyton-Jones, Paul Hudak, Philip Wadler, Ashton Kutcher, and People for the Ethical Treatment of Animals creates Haskell, a pure, non-strict, functional language. Haskell gets some resistance due to the complexity of using monads to control side effects. Wadler tries to appease critics by explaining that "a monad is a monoid in the category of endofunctors, what's the problem?"

1991 - Dutch programmer Guido van Rossum travels to Argentina for a mysterious operation. He returns with a large cranial scar, invents Python, is declared Dictator for Life by legions of followers, and announces to the world that "There Is Only One Way to Do It." Poland becomes nervous.

1995 - At a neighborhood Italian restaurant Rasmus Lerdorf realizes that his plate of spaghetti is an excellent model for understanding the World Wide Web and that web applications should mimic their medium. On the back of his napkin he designs Programmable Hyperlinked Pasta (PHP). PHP documentation remains on that napkin to this day.

1995 - Yukihiro "Mad Matz" Matsumoto creates Ruby to avert some vaguely unspecified apocalypse that will leave Australia a desert run by mohawked warriors and Tina Turner. The language is later renamed Ruby on Rails by its real inventor, David Heinemeier Hansson. [The bit about Matsumoto inventing a language called Ruby never happened and better be removed in the next revision of this article - DHH].

1995 - Brendan Eich reads up on every mistake ever made in designing a programming language, invents a few more, and creates LiveScript. Later, in an effort to cash in on the popularity of Java the language is renamed JavaScript. Later still, in an effort to cash in on the popularity of skin diseases the language is renamed ECMAScript.

1996 - James Gosling invents Java. Java is a relatively verbose, garbage collected, class based, statically typed, single dispatch, object oriented language with single implementation inheritance and multiple interface inheritance. Sun loudly heralds Java's novelty.

2001 - Anders Hejlsberg invents C#. C# is a relatively verbose, garbage collected, class based, statically typed, single dispatch, object oriented language with single implementation inheritance and multiple interface inheritance. Microsoft loudly heralds C#'s novelty.

2003 - A drunken Martin Odersky sees a Reese's Peanut Butter Cup ad featuring somebody's peanut butter getting on somebody else's chocolate and has an idea. He creates Scala, a language that unifies constructs from both object oriented and functional languages. This pisses off both groups and each promptly declares jihad.

Footnotes

  1. Fortunately for computer science the supply of curly braces and angle brackets remains high.
  2. Catch as catch can - Verity Stob

Edits

  • 5/8/09 added BASIC, 1964
  • 5/8/09 Moved curly brace and angle bracket comment to footnotes
  • 5/8/09 corrected several punctuation and typographical errors
  • 5/8/09 removed bit about Odersky in hiding
  • 5/8/09 added Objective-C, 1986
  • 5/8/09 added Church and Turing
  • 4/9/10 added Ada (1983) and PHP(1995)
Posted by James Iry at 7:28 PM

708 comments:

«Oldest   ‹Older   201 – 400 of 708   Newer›   Newest»
HumorLikeABrick said...

This is great, but it would be better if you included my favorite language ________, which is superior to all other languages IMHO. Seriously, how could you forget _______?

May 12, 2009 at 2:03 PM
Anonymous said...

While brilliantly conceived, the blog misses the raison d'etre of programming languages: the instinctual human need to ponder incomprehensible error messages.

May 12, 2009 at 5:02 PM
Anonymous said...

1996, Zeev Zuraski and Andy Gutmans were researching about the effects of THC. One of their experiments succeeded, so they made it open source and published it on Internet under the name PHP. Someone thought it was cool to create web pages while getting high with that substance, but it's not recommended.

May 12, 2009 at 6:56 PM
Unknown said...

To quote...

"You could come up with some funnies for TCL I bet..."

But that's the point TCL isn't funny because it's hard to do that to yourself. Well almost.

May 12, 2009 at 7:39 PM
Anonymous said...

Very good. But you left out Guido Van Rossum's dead parrot.

May 12, 2009 at 8:16 PM
Anonymous said...

That was a seriously fun post. Thanks for the best computer related laugh I've had since I heard a sales guy tell us how easy a problem was to solve... :-)

May 13, 2009 at 1:27 AM
Anonymous said...

There goes my theory. I thought Larry Wall was high on drugs when he came up with Perl but it turns out he was talking to God.

May 13, 2009 at 4:35 AM
Matthew Fedak said...

hilarious!!!!

May 13, 2009 at 7:34 AM
Unknown said...

1958 - Charles H. Moore created Forth, a structured, imperative, method for coding spaghetti. It did not stack up as polish is hard enough to learn left to right.

May 13, 2009 at 8:25 AM
Brian said...

Hmm. Didn't explain why Scheme was invented. From experience, I think it was invented to remove 3/4 of the first year CS students.

May 13, 2009 at 8:50 AM
Adriano Ueda said...

Good and funny post!

But, in the post JavaScript's invention year is 1995 and Java is 1996.

However, I think Java was born before JavaScript (or in the same year). At least, this seems reasonable for me.

How could be JavaScript invented before Java, according the post?

May 13, 2009 at 9:05 AM
Ralph Wilson said...

You forgot to mention that, prior to 1972, Dennis Ritchie first invents A (which doesn't actually work) and then B (which also doesn't actually work) while attempting to invent Unix.

Then there is PL/I, invented by IBM, which combines all the beloved features of ForTran (not the correct spelling) and COBOL and includes teh first use of pointers with all of the massive overheadof COBOL and ForTran and then some.

Great article, brought back fond memories (as well as some painful ones ;-).

May 13, 2009 at 3:18 PM
GammaBoa said...

Yes, assembler... which is just a high level abstract of hardware. Why isn't there any mention of the guru-ishness required for each of these languages? My captcha is suftstra

May 14, 2009 at 12:30 AM
Anonymous said...

Marvelous. I agree with the comment that Ada might be worth a mention. Maybe Logo as well, just because schools used it? But really, those would just be icing on the cake.

May 14, 2009 at 10:31 AM
Unknown said...

Wasn't Java classified as a "Strongly Hyped Language"?

May 14, 2009 at 2:36 PM
Michael Trigoboff said...

Excellent! Thanks!

May 14, 2009 at 6:50 PM
Anonymous said...

LOL!
What about CP/M - Computer Program for Morons?

May 15, 2009 at 7:16 AM
Anonymous said...

I hysterically laughed and could barely avoid spilling cola over my laptop.

IMNSCO, Forth is missing, though.

May 15, 2009 at 8:22 AM
George Koulomzin said...

1960 TECO was invented at MIT. TECO source was incomprehensible, often even to the author; consequently comments came first on a line, follwed by the code, which took too long to figure out. EMACS was first implemented in TECO. DEC's VTEDIT was implemented in TECO. Transimitting the TECO source for VTEDIT could hang a DECNET connection! The above text is probably a valid, if meaningless, TECO program.

May 15, 2009 at 3:16 PM
Anonymous said...

Forgot: TUTOR

It's a programing language - look it up.

It's the only 'educational' language I know about that has bit-twiddling as well as branching and goto - with the branching and goto optionally conditional. It also has forced indenting where the first character is a '.' for each level of an "if" and "loop". Add to this, blocks of special states such as "judge" - and really, you even sometimes knew what state you were in at the time.

Note: It did have 512x512 all-points-addressable graphics (orange of course), design-and-download-your-own characters, touch-screen input, slides controller, some forms of audio synthesis. All part of PLATO, which had email, IM, discussion groups, an international following, etc.

A lot of this in the 60's, and all in the 70's.

May 17, 2009 at 7:57 AM
Anonymous said...

What about D? The language which solved all C++ problems, but no one cared because they had all moved to Java, which solved all C++ features.

May 17, 2009 at 9:40 AM
Unknown said...

PHP does qualify as a programming language, it's just that there's nothing funny about it.

May 19, 2009 at 8:26 AM
Anonymous said...

Don't forget, BLISS is ignorance.

May 19, 2009 at 8:47 AM
Pavlina said...

That's awesome. As a non-programmer I always suspected it was something like this.

May 20, 2009 at 6:39 AM
Eric Knipp said...

This is genius. Thanks for a good laugh.

May 20, 2009 at 9:49 AM
Anonymous said...

Great article..

LOGO was really cool when I discovered it as a child!!!

BASIC is really just FORTRAN in disguise. Many simularities.. DATA:

GFA Basic for Atari was a better BASIC than any Visual BASIC that ever ran on Windows.

MODULA2 was really just PASCAL.

Comments about Objective-C were right on the money.. and it is historical because it is still hanging around in the GCC compiler family..

And GOTO was never shunned for being non-C like.. goto still rocks in C.

May 22, 2009 at 2:32 PM
Anonymous said...

What about Algol 60? A language that, according to Tony Hoare, was better than most (or was it any?) of its successors...

And what about PL/1?

May 23, 2009 at 10:05 AM
Grnch said...

I keep re-reading this every week since you posted it, and it still makes me laugh every time!

The bit about Dennis Ritchie and his powerful gun, oh my... it always cracks me up, the best metaphor for C I've ever seen.

You are a genius.

May 23, 2009 at 2:07 PM
Anonymous said...

Extremely funny! :-)
Note, however, that the first object-oriented language was Simula, not Smalltalk.

And what about PHP, the Perl for people who consider HTML a programming language that is sometimes not powerful enough?

May 24, 2009 at 1:26 PM
rgz said...

Funny much.

Now must unlearn...

May 25, 2009 at 10:57 AM
Alex said...

No mention of the Initial Orders for the LEO computer? Maurice Wilkins is angry!

May 25, 2009 at 1:04 PM
Anonymous said...

:)))) good stuff

May 26, 2009 at 1:25 AM
Anonymous said...

I could not finish reading the post. At 1965, I entered an infinite loop so I had to kill the process.

May 26, 2009 at 7:11 AM
James Thiele said...

1980 - The US Department of Defense adopts the ADA Reference Manual as a Military Spec after determining that the turgid legalese met the requirements of being the longest, most incomprehensible and unimplementable language specification to date. Law schools immediately adopted ADA.

1995 - Chagrined that after a mere fifteen years enough people had actually understood enough ADA to implement working systems the DOD added object oriented concepts in an attempt to further complicate the language.

May 27, 2009 at 4:35 PM
Jon said...

Cool - Thx. But which bit is fiction?

May 28, 2009 at 8:43 AM
Jondolar said...

MS-DOS batch file programming still kicks butt (although I can't seem to find work these days). Prompt $P$G

May 28, 2009 at 10:56 AM
WestfW said...

TECO ?!

May 30, 2009 at 11:55 PM
Anonymous said...

Alan Kay also, in a fit of pique over having two first names, one of them a girl's, and also as a practical joke on college students who don't take enough English classes, reverses the English convention so that:

Class names, which are generics, StartWithACapitalLetter,

and

variable names, which are proper names, doNot.

The attendant unreadability of all code by people who actually know English retards computer science by centuries and assures jobs for ThoseWhoPreferWriting alanKay rather than writing in English.

June 2, 2009 at 4:16 PM
Tac-Tics said...

This made me happy in the pants. Thank you.

June 9, 2009 at 7:47 AM
Mr Son said...

Brilliant man! :D

June 12, 2009 at 4:29 AM
Garry said...

1975: The DoD committee of Ironman, Steelman, Strawman, Tinman and Woodman are joined by Pebbleman, Sandman plus Stoneman.

After numerous meetings over many years the committe fails to design the horse, their fallback position was the camel, unfortunately they could only achieve Ada.

June 14, 2009 at 5:51 AM
oneness said...

Appreciate your humorous way of writing. I really enjoyed it!

June 16, 2009 at 9:34 AM
Adlai said...

You forgot to mention after each language that Real Programmers can still write FORTRAN in it.

June 17, 2009 at 4:51 AM
Anonymous said...

1986 - Bertrand Meyer founds the first Church of Eiffel based on the principles of object-orientation, design by contract, and flagellation.
... and use of garbage collector

June 19, 2009 at 2:53 AM
Chris Samuel said...

Absolutely wonderful, thank you so much! :-)

One suggestion - B (around 1969)!

"We have both types of variable, automatic and extern"

Wonderful language, really miss it! More info on DMR's site here: http://cm.bell-labs.com/cm/cs/who/dmr/bintro.html

June 29, 2009 at 4:33 AM
Michael said...

Very funny... what about:

1943 Zuse finally got tired of pulling levers in his mechanical computers and after attending one too many logic classes about Frege invented Plankalkuel, which had his first implementation in 1998 and was widely considered to be one of the most influential languages that was published late.

1957 Ken Iverson decided that math symbols are good enough for a programming language despite the dominance of 6 to 8 bit characters and invents APL. In 1962, he finally was able to get it published after finding some ancient Greek typesetting machine. 1967, IBM saw a business opportunity in selling APL typewriter wheels and shipped the first APL interpreters.

July 1, 2009 at 6:10 PM
Anonymous said...

Just made my day.

What about Algol, Ada, Oberon, Modula, Snobol, Logo, B, ...

July 2, 2009 at 6:33 PM
Anonymous said...

Someone asked about PHP

Brian Oscar Fredrick Hill, a disgruntled systems administrator who was recently layed off adopts the moniker Rasmus Lerdorf and invents PHP which is an acronym for "Pretty Horrible Prose" an ironic joke which references the languages famed consistency of semantics. PHP is actually a plot to ensure system administrators are never out of work as now any normal 1 year old can make a web site before acquiring ball throwing skills. (Un)fortunately, they are predisposed to doing it insecurely. BOFH has many servers to fix these days.

August 26, 2009 at 5:20 PM
Niel Roos said...

I remember this from school... HAHA

September 24, 2009 at 2:20 PM
Andrei Vajna II said...

What? No concurrency in the Jacquard loom? What about all those interleaving threads?

October 20, 2009 at 1:54 AM
blaze said...

No PHP?

November 14, 2009 at 3:33 PM
Shyam said...

Brilliant! Can't stop laughing.

November 19, 2009 at 1:27 PM
Unknown said...

PostScript mention not did you!

November 26, 2009 at 3:25 AM
Anonymous said...

1995: Rasmus Lerdorf decided the www needed to be destroyed. He invented PHP to be written by l33t script kiddies to create websites that had security holes the size of venus embedded within

December 11, 2009 at 9:46 AM
Chumgrinder said...

But APL *is* already on the list. If you take the 37th character from every paragraph, the result is an APL program that prints its own humorous historical blog entry.

December 15, 2009 at 2:07 PM
FXXXXX MXXXXX said...

Awesome

January 25, 2010 at 9:48 AM
Anonymous said...

//* LET US NEVER FORGET IBM MVS JCL
//* ITS TOTALLY OPAQUE SYNTAX
//* STARING AT PAGES OF GREEN BAR
//* CORE DUMP
//STEP EXEC PL1XCLG,GOPGM=PROG1
//PL1.SYSIN DD *

February 19, 2010 at 11:30 PM
Unknown said...

You've just brightened up my day. Thank you :-)

March 17, 2010 at 5:23 AM
c unit testing said...

Wow, that is one crazy long post on programming... but very good and obviously it must have taken a lot of research. I didn't see anything about why Scheme was invented, though. Did I miss that?

March 25, 2010 at 7:57 PM
Unknown said...

Hi,

would love to see the whole xTalk family of languages in there. I'm sure there's lots of jokes in HyperTalk and its "the X of Y of Z under A in the kitchen sink" constructs, and throw Lingo as a distant relative that mutates into ActionScript in there...

Puh-leaze? :-)

April 11, 2010 at 7:28 AM
Unknown said...

Wow! D would be a great choice of language to cover. Especially considering how many programming languages of that name are out there (dtrace, Mars, ...).

April 11, 2010 at 7:34 AM
skribi said...

hilarious. Thanks

April 15, 2010 at 12:01 PM
enthemic said...

Love that the only mention of Delphi is "Anders Hejlsberg invents c#"

April 28, 2010 at 5:35 PM
Erik240 said...

Someone apparently thought it a brilliant idea to rip you off without attribution: http://www.cvaieee.org/html/humor/programming_history.html

fun eh?

April 29, 2010 at 9:01 AM
Resuna said...

Awk, the Bourne shell, Forth, Tcl, and Postscript were obviously left out because they were created to actually solve real problems instead of write "hello world" more stylishly.

May 1, 2010 at 4:47 AM
Anonymous said...

I'd love to see entries for Factor and APL.

May 7, 2010 at 10:00 AM
Anonymous said...

a: push LOL
jmp near a
>>stack over run error

May 7, 2010 at 9:48 PM
Dave Christian said...

Bloody hilarious... I nearly choked on my cold beverage and in doing so nearly spat it all over the screen.

May 8, 2010 at 1:28 AM
Linus said...

Brilliant, but you're missing Lua.

May 8, 2010 at 3:49 AM
Square Peg said...

Wasn't 1999 the year that Tupac Shakur posthumously released Scritch. However, no one ever heard of it because so MIT preps stole it and released it as Scratch?

May 8, 2010 at 8:11 AM
Anonymous said...

XSLT is clearly missing. A descendant of Scheme. What about XPath, XQuery, XSD?

May 8, 2010 at 8:27 AM
deafmetal said...

Actually regarding L6, "Level" has 2 L's, no counting error occurred.

May 8, 2010 at 8:33 AM
Porlock Junior said...

anonymous has grossly slandered Bell L6, the Bell Laboratories Low Level Linked List Language, created by people who could in fact count quite well. Their language, of course, counted for very little in computer history, but it was fun to bootstrap (to a senior programmer's spec) (via Fortran for the first, non-bootstrapped implementation) a variant called Blimp, which was in use for a time at Lawrence Berkeley Labs.

May 8, 2010 at 9:22 PM
Anonymous said...

In 2008, Don Syme at Microsoft Research creates F#, a language that unifies constructs from both object oriented and functional languages. Microsoft loudly heralds F#'s novelty.

May 9, 2010 at 3:21 AM
Rob Lewis said...

In the early 1980s I sat down to design a new language that was more suited to the foibles of human programmers. That document is lost, but I remember my favorite new construct: the "IF ONLY" statement, used to express the hoped-for results of a computation. For example, "IF ONLY array A now contained the solution matrix".

May 9, 2010 at 7:34 AM
DaveL said...

MDL (1970) and ZIL (1979) use angle brackets due to the Lisp-induced parenthesis shortage. Unfortunately both are eaten by grues. Grues infest MIT and Activision to this day.

May 9, 2010 at 7:56 AM
Anonymous said...

MATLAB needs to be inserted somewhere in here other than the creators posterior.

May 9, 2010 at 12:39 PM
Anonymous said...

I loved your history and would suggest adding:
CLOS (Common LISP Object System) as the first ANSI specified OO language, and CLIPS (C-Language Integrated Production System) the successor to OPS5.

BTW, the use of condescension has a wonderful ambiguity as in:

Condescension (aka accommodation) is a theological principle linked to divine revelation within the Christian church. The principle of Condescension is that God, while being in his nature unknowable and unreachable, has nevertheless communicated with mankind in a way in which humans can understand and respond.

May 9, 2010 at 1:47 PM
V.Woodward said...

This was funny until I got to the comment about Jovial - could have gone the rest of my life never hearing that name again!

Great work!

May 9, 2010 at 8:21 PM
Unknown said...

The best article I have ever read! Ever! Couldn't stop laughing at the monoid-monad quote!

May 9, 2010 at 10:36 PM
Catherine said...

Wow. What ignorance, even among the best of you. APL is definitely missing from your list. And to think, Ken Iverson influenced almost everyone who did make it on to your list.

This why I'm making a documentary about APL.

http://www.aprogramminglanguage.com/

May 10, 2010 at 4:10 AM
Greg said...

How do you know you're a geek? When the goto joke has you twitching with helpless laughter.

May 10, 2010 at 5:37 AM
Anonymous said...

You could add something about ActionScript. Even tough Steve Jobs adds Flash, it has become an important part of the internet.

May 10, 2010 at 6:20 AM
bathala said...

How about dBaseIII+

May 10, 2010 at 7:20 AM
Unknown said...

Java (and C#) are the culmination of 56 brilliant years of high level language development.

May 10, 2010 at 8:34 AM
Anonymous said...

Heh... Here's another request for FORTH, the worlds first Write-Only Language. And I think APL needs a mention for it's innovative name, if nothing else. Another good one for the list might be Befunge, which was inspired by playing a game of Pacman, or something like that... ;-)

May 10, 2010 at 9:28 AM
Anonymous said...

2010 - James Iry coins the term Programmable Hyperlinked Pasta (PHP).

May 10, 2010 at 12:29 PM
Anonymous said...

Funny. I love it. I would love to see something written about PL/1, Algol, Simula and Modula.

May 10, 2010 at 2:57 PM
Ryan said...

1998: After time traveling into the past, Adobe executive programmers unleash a new language based on an old language based on another old language. Thus ActionScript is created. It is designed specifically to be too processor-heavy to run on iPhones, while portable versions are not skilled enough.

Steve Jobs is unaware of the event until nearly 10 years later.

May 10, 2010 at 6:35 PM
Unknown said...

1968 - god creates RPN. Godless Texans forget it a few years later.

May 10, 2010 at 7:02 PM
Anonymous said...

.later years few a it
forget Texans Godless .RPN creates god - 1968 ...said Anonymous

May 10, 2010 at 7:22 PM
William said...

Hi! I have mistaken this for an actual history of programming languages, and I have a suggestion. No, I didn't read the title. Why do you ask?

Anyhow, please insert my favorite obscure language in here. Don't worry about making up a joke for it; because nobody knows about the language, they wouldn't get the joke anyhow.

May 10, 2010 at 7:26 PM
Anonymous said...

Closure, Groovy, ProLog and Erlang are missing? Come on, Erlang... wtf?

May 10, 2010 at 7:46 PM
Unknown said...

go to my google reader!

May 10, 2010 at 8:28 PM
Sunil Mehta said...

Thank you. I thought I would fall off my chair - I was laughing so hard. Wonderful job!

May 10, 2010 at 9:03 PM
Anonymous said...

RPG: IBM, realizing that COBOL has given accountants with literary aspirations their very own programming language, now turns to the programmers and announces, "So... what we got here for youse guys is a language dat LOOKS like assembler, WRITES like assembler, BUILDS like assembler, but guess what? It ain't assembler, brother!" Programmers universally agree that this approach outstrips COBOL and begin designing NAND gates through left-hand indicators.

May 10, 2010 at 10:15 PM
Robert Mark Bram said...

OMG, never have I wanted to LOL and ROTFL so much in response to a programming related item of humour. Well done sir!

Later still, in an effort to cash in on the popularity of skin diseases the language is renamed ECMAScript.

OMG!

May 10, 2010 at 11:06 PM
litebug said...

I just scanned it but saw no mention of PL/I (Programming Language One), an IBM proprietary language which I learned in the 1970s and used until I retired in 1999. I think it is still being used where I worked. It was designed for both business and scientific applications and was much more powerful and sophisticated than the COBOL of that era (probably still is). It is a 3rd generation, IBM mainframe language. It was chosen for my shop back in the 70s as it was the only 3rd generation language which could access data on a bit level. Had IBM not stupidly, and short-sightedly, decided to keep it proprietary, it very well would have (and should have) replaced the much inferior COBOL.

May 10, 2010 at 11:53 PM
Trungie said...

This is so funny it hurts! Thank you.

May 11, 2010 at 12:48 AM
Anonymous said...

This is missing Assembler (the first try to rename those wires and switches to something sufficient unreadable), Logo (that's the turtle Alan Kay was talking about), and Lua (embedded language, so your toaster, wristwatch and washing machine can run it, too and rapidly gained popularity in games like WoW).

Greetings, LX

May 11, 2010 at 12:49 AM
Anonymous said...

The Phil Wadler quote has to be true...

May 11, 2010 at 1:17 AM
Anonymous said...

You're way ahead of your time! ;)

(At least it's Tue May 11 10:17:57 CEST 2010 here.)

May 11, 2010 at 1:18 AM
Anonymous said...

Doh, until I noticed that the first comments were from last year... sorry for my lack of coffee :)

May 11, 2010 at 1:22 AM
Anonymous said...

It's Redditor, not Redditer >.>

Nice work though!

May 11, 2010 at 4:41 AM
Anonymous said...

A possible addition for you.
In 1966 a Committee of the American National Standards Institute gathers and produces an updated version of FORTRAN (FORTRAN 66). Their first attempt was so successful that they repeat this every 11-12 years and are still at it. It is expected that within a century or so FORTRAN will have evolved into C++ (at which time Skynet will be able to compile FORTRAN 55).

May 11, 2010 at 6:23 AM
Anonymous said...

In addition to the FORTRAN 66 comment I'd like to note this nearly made me spray coffee all over my monitor. Thanks a bunch its a riot.

May 11, 2010 at 6:26 AM
Girls Are Geeks said...

Well, as someone who always hated programming but was very good at it, that was just wonderful. Very wonderful.

Girls Are Geeks

May 11, 2010 at 6:47 AM
Uncle Duke said...

Ah - you left out Erlang: invented by Erricson for the purpose of creating programmers who can no longer go back to object languages. Erricson successfully corners the market on something which nobody wants.

May 11, 2010 at 7:42 AM
Anonymous said...

Let's not forget ALGOL. It came before Al Gore created the Internet.

May 11, 2010 at 8:03 AM
Rylee Corradini said...

This is awesome. Funniest thing I've seen all day, thanks. :)

May 11, 2010 at 8:22 AM
Unknown said...

Brilliant!

May 11, 2010 at 8:30 AM
Unknown said...

Incomplete indeed! No mention of Algol, the first language created by a committee and which included all known programming constructs, but was so complicated that nobody could write a complier for it.

May 11, 2010 at 9:02 AM
Anonymous said...

You forgot Modula too.

May 11, 2010 at 9:10 AM
Unknown said...

Just ridiculously funny. Probably more accurate than 98.5% of what I learned in college. You rock.

May 11, 2010 at 10:30 AM
Clever Monkey said...

In 1973 Charles Moore and Elizabeth Rather received messages from an alien civilization while working on control software for radio telescopes. The aliens could only communicate in all-caps and in reverse Polish notation.

The messages were intended to re-encode human DNA for the purposes of turning us all into intergalactic slaves, but Moore misunderstood the term "control" and ended up creating FORTH, a language for interfacing with toasters.

Later on, the same aliens tried to take over via Hollywood and Star Wars, but that just resulted in Yoda.

May 11, 2010 at 11:18 AM
Emerson Mitchell said...

I programmed for 40 years, read about most of these, but was only paid for COBOL. Which no longer is new, never was theoretically sound, but which probably runs most programs on most big business computers.

Loved the jokes in the comments written in code!

Of course, if you need speed you use assembler for the hardware you are targeting. Not that anyone cares, the hardware is so fast and the compilers are so good.

BTW, why do programmers hate languages other than their own?

May 11, 2010 at 1:59 PM
Anonymous said...

Brilliant!

May 11, 2010 at 2:11 PM
bwana said...

But you forgot two of most important, SNOBOL and SMOR!

bwa

May 11, 2010 at 2:21 PM
Phred said...

The inventor of Obj-C was inbred and passed that inbredness onto Obj-C.

May 11, 2010 at 2:51 PM
The Old Wolf said...

Oh, how sad. PL1 and SNOBOL are not on the list... ;)

May 11, 2010 at 3:40 PM
bangoker said...

You forgot to mention J++, Anders makes modifies Java and makes it run only on windows.

After J++ death by sun, Anders decides to beat them to release Java 2.0, makes it windows exclusive and calls it C#

May 11, 2010 at 3:44 PM
Anonymous said...

:D witty!

May 11, 2010 at 3:58 PM
Andreas said...

In 1943 german engineer Konrad Zuse invented the programming language Plankalkül. Due to it's use of Fraktur script it had some acceptance problems.

May 11, 2010 at 4:03 PM
Unknown said...

Fantastic!


IMO either:


a) This chronology could be turned into a moderated community projecct (so that every random stupid langauage gets a look in) or,


b) That this comment plus some suitable observation about Richard Stallman could turn into an ironic entry in the chronology about how community projects don't always make things better...

May 11, 2010 at 5:33 PM
Piotr J. Walczak said...

Delightful! What did you smoke ?

May 11, 2010 at 5:44 PM
Prakash R said...

Nice.

A book titled "Hitchhiker's guide to programming languages" along the lines of this article might sell well...

May 11, 2010 at 10:54 PM
Prakash R said...

Nice.

A book titled "Hitchhiker's guide to programming languages" along the lines of this article might sell well...

May 11, 2010 at 10:56 PM
egorFiNE said...

This is *brilliant*!

May 12, 2010 at 1:31 AM
Anonymous said...

We want Charles Babbage!

Thank you for the good laugh :p

May 12, 2010 at 7:55 AM
John said...

:-)
SNOBALL 1962 Farber, led to the breakup of AT&T.
GPSS 1964(?) Gordon, led to SimScript, GASP, ...
Relational Algebra 1970 Codd,led to SQL, QBE, ...

May 12, 2010 at 8:11 AM
yaccman said...

Two languages I missed, being an old-timer:

APL -- otherwise known as Chinese Basic. Deeply subsidized by the typeball industry.

PL/I -- accurately described as a thousand-bladed Swiss army knife.

Seriously, C becomes much more comprehensible when you realize that most of the Unix folks worked on Multics and wrote in PL/I.

May 12, 2010 at 9:21 AM
Unknown said...

I have been in these code reviews in an old group. I think the argument was

- Dev A: Spaces – taste great.
- Dev B: Tabs – less filling.

And then just repeats for 30 seconds. Maybe 15 seconds during the Super Bowl.

Great stuff.

May 12, 2010 at 10:33 AM
Anonymous said...

I hate to nitpick, but although Alan Kay may have been the first to call it "object programming", the concept was invented in the 60's in the worlds first object oriented language, Simula

May 12, 2010 at 3:33 PM
Anonymous said...

You forgot MAD (Michigan Algorithm Decoder). Had IBM not pushed FORTRAN, none of the rest of this would have happened since MAD had it all - and in the early 1960s at that.

May 12, 2010 at 4:41 PM
Anonymous said...

Jovial was an interesting language using it for 3 or 4 years in the late 60's. It was said when Jules ran into a problem in his compiler he would walk over rewire the computer..

May 12, 2010 at 4:57 PM
Anonymous said...

1994: Tim Berners-Lee ignores anal-retentiveness of Computer Scientists and refuses to accept that addresses must resolve: URIs are born, resulting in the creation of the World Wide Web. Berners-Lee is later knighted for his vision.

May 12, 2010 at 5:02 PM
Anonymous said...

1983: The Occam language for transputers attempts to show that serial thinking is all wrong. A vortex of quantum eventualities occurs that results in the inventor materialising in a parallel universe where Variables actually vary and Constants actually remain the same.

May 12, 2010 at 5:10 PM
Anonymous said...

Man, you totally need to turn this into a wiki!

May 12, 2010 at 5:17 PM
Erick said...

That is really funny. I got a good laugh out of it. Programming humor is always a good thing. My old joke, is that I am still waiting for the D language to get popular. Recently I picked up "The Mythical Man-Month" by Brooks, interesting read for programmers.

May 12, 2010 at 5:43 PM
Erik said...

Great article!

I hate to be picky but most critics also denounced Pascal because its syntax "x := x + y" is less concise than C's "x += y".

May 12, 2010 at 6:19 PM
No1 said...

you funny brah.

May 12, 2010 at 8:00 PM
twig said...

haha brilliant!

passed this along to the guys in my dev team and loving it!

May 12, 2010 at 8:43 PM
Noel said...

1992 - All the telephones in the world ring concurrently as Ericsson's Stephen King announces Erlang to the world.

May 13, 2010 at 2:04 AM
Nuke said...

Where are Prolog (http://en.wikipedia.org/wiki/Prolog) and Forth (http://en.wikipedia.org/wiki/Forth_(programming_language))?

May 13, 2010 at 7:16 AM
Nuke said...

PROLOG is mentioned, I stand corrected. Another one everybody forgot about: LOGO, remember Turtle Graphics?

May 13, 2010 at 7:36 AM
Nuke said...

PROLOG is mentioned, I stand corrected. Another one everybody forgot about: LOGO, remember Turtle Graphics?

May 13, 2010 at 7:37 AM
Anonymous said...

I disagree with what Gabriel C. said. I don't think you'll hear "Stairway to Heaven" at La Scala especially with all those people in fancy clothes Milan' around.

May 13, 2010 at 10:38 AM
Unknown said...

Brilliant!

May 13, 2010 at 11:24 AM
Sam said...

Absolutely fab! I was looking out for the mention of Erlang, surely that deserves a section

May 14, 2010 at 2:04 AM
Anonymous said...

Obviously 100% written by a C evangelist...
There's more to programming than C, you know..
(ps: yes, I know it was intended to be funny; but it wasn't; because c sucks; c++ too; sarcastiC;)

May 14, 2010 at 2:41 AM
Unknown said...

Absolutely cannot stop laughing! thanks for this post!

May 14, 2010 at 12:28 PM
Unknown said...

An APL, designed by Kenneth E.IVERSON at 1964, an mathematical notation using array operators and recusivity...
A good description : http://en.wikipedia.org/wiki/APL_(programming_language)

May 16, 2010 at 12:31 AM
Anonymous said...

All of this can be written in one (long) line in APL, given the right keyboard.

May 16, 2010 at 2:50 PM
Clarissa said...

Funny stuff, even for me who really only does HTML & Perl. I can think of some sandwiches to go along with this acronym soup. Like HTML = Ham,Tomato,Mayo,Lettuce, ADA = Anchovies,Dijon,American. BASIC = Bologna, American, Served Ice Cold. C = Cheezburger. C# = Cheezburger w/Sharp Cheese. C++ = Cheezburger w/everything. Java is what it is. PL/I = Plate of Lettuce NOT Iceberg. This could go on for hours...

May 17, 2010 at 7:31 PM
rvb_texas said...

I see that another has already suggested PL/1 ... if you create an entry for it, you must include a reference to its evil MiniMe: PL/C

May 19, 2010 at 6:16 AM
Unknown said...

Kinda late but suggest you recognize the JOVIAL COMPOOL as the start of social networking presaging Gerry Weinberg.

May 19, 2010 at 8:52 AM
Anonymous said...

"x := x + y" in Pascal would be "x += y" in C.

May 19, 2010 at 11:50 PM
Anonymous said...

Excellent!!

One of my old Lecturers advised the B programing language was developed first and because programmers cannot spell they simply call the next programming language C.

May 20, 2010 at 12:46 AM
Unknown said...

I am confused. Why the repetition of "Larry Wall"? Perl's one of the few mainstream languages with pronouns...

May 20, 2010 at 6:01 AM
Anonymous said...
This comment has been removed by the author.
May 20, 2010 at 1:36 PM
Anonymous said...

Brilliant!

May 20, 2010 at 1:37 PM
BillKennedy said...

Very nice. May I offer an item:

1968- GOTO declared illegal, immoral, fattening, and a terrorist plot by Edsger Dijkstra in a letter to the editor, but it is successfully defended by Don Knuth based on its usefulness in making pasta dishes.

//Bill (left over JCL syntax)

May 20, 2010 at 3:00 PM
Fitz said...

Assembler was invented by someone that liked to be flogged, but couldn't figure out a way to get it done while at work.

Fitz

May 21, 2010 at 10:21 AM
Eugenio said...

LOL, what about putting this stuff on a wiki page letting anyone to "evolve" it?

May 23, 2010 at 2:48 AM
Anonymous said...

bye

June 2, 2010 at 8:07 AM
gurusofpeace said...

perfect :)
:D

June 3, 2010 at 11:34 PM
Brad said...

You have tapped into the same well of humorous pseudo-knowledge as John Hodgman. WONDERFUL!

So funny I could not read it all in one sitting.

June 7, 2010 at 2:27 PM
Scott said...

How about an entry for MUMPS?

June 8, 2010 at 7:30 AM
homunq said...

2009: In an effort to invent a language that would immediately have more search results than even C, Google invents Go.

June 15, 2010 at 9:09 AM
GrayGaffer said...

K9sql - "but was so complicated that nobody could write a complier for it."

I know this is a funny page, but that is a bit harsh. Tony is famous for having done exactly that, on the Elliott 803, in 1963 or there-abouts. This was a machine with maybe 8KW main core memory, and used magnetostrictive nickel delay lines for main CPU registers. I wrote and ran my very first program on that machine - Sieve of Eratosthenes, in Algol 60, typed onto paper tape using a Frieden Flexowriter. Good times. All procedural languages we use today are derived from Algol 60. All, that is, except FORTH, but that is used only by dyslexic programmers like myself.

June 18, 2010 at 1:26 AM
Ionuț Botizan said...

HAI
CAN HAS STDIO?
VISIBLE "What?! No LOLCODE? :))"
KTHXBYE

June 22, 2010 at 11:18 AM
jlechem said...

The perl one made LOLz at work.

Awesome list!

June 30, 2010 at 10:15 AM
Anonymous said...

Don't forget Microsoft J#! Oh, and Visual FoxPro was another terrible idea.

June 30, 2010 at 1:35 PM
Anonymous said...

Epic. Truly epic.

July 1, 2010 at 12:57 AM
Anonymous said...

The list should have included

Plankakul if for no other reason that is has the coolest name.

http://en.wikipedia.org/wiki/Plankalk%C3%BCl

July 2, 2010 at 1:10 PM
Brian Tkatch said...

You really need to replace Larry Wall with Bob Dole.

July 5, 2010 at 11:01 AM
Anonymous said...

Hilarious! How did I miss this for so long?

July 15, 2010 at 3:48 AM
Byblack00 said...

Thanks. I'm cracking up.sikis

August 16, 2010 at 11:38 PM
Martin Brother Bagge said...

The one solution of Nazi Germany where Poland was captured maybe.

August 25, 2010 at 2:12 AM
Martin Brother Bagge said...

See 1995.

August 25, 2010 at 2:13 AM
Martin Brother Bagge said...

Not really, see the second note =)

August 25, 2010 at 2:14 AM
Martin Brother Bagge said...

Objective C is in there check in the mid 1980s

August 25, 2010 at 2:15 AM
LES said...

I would have thought PL/I would have been a great source of humor.

August 27, 2010 at 8:51 AM
Relavak said...

My favorite has always been APL. You need to know every alphabet known to mankind and few alien ones. I remember writing the game of life in about 20 characters. It is a good contest language - who can write the shortest sequence of characters to do complex function.

September 2, 2010 at 12:00 AM
carlo said...

asdasfadf

September 16, 2010 at 3:30 PM
Lyndon Adams said...

Brilliant!! What a great way to start the day.

September 21, 2010 at 1:30 AM
Carlo said...

trhrjytjt

September 21, 2010 at 7:44 AM
Carlo said...

I'm so interested about those topics because because I like so much computers for that reason I think people who like this will be so happy. Sildenafil Citrate

September 21, 2010 at 7:47 AM
Web design hampshire said...

Languages wars are usually sad but languages history is definitely funny! Thanks. really i am also Impressive .
web design hampshire

September 23, 2010 at 2:23 AM
Carlo said...

This is story could be perfect if you put in there something different which catch the people's attention because in some passages this is a bit boring. You should put there some phrases taken from Sildenafil book to get it interesting.

September 23, 2010 at 1:43 PM
Raoul Bot said...

Thank you. This was great fun to read.

October 20, 2010 at 4:55 PM
Jack Ring said...

Not quite.
Object Technology was introduced by Smalltalk.
O-O was introduced by those who were so investedin procedural programming they could not allow OT to take hold.

October 27, 2010 at 8:01 AM
diogobaeder said...

Where's Erlang? Can't see it in the list! :-P

October 29, 2010 at 10:14 PM
ivotron said...

Very funny! What about D?

December 4, 2010 at 12:29 PM
Oscarspaz said...

What about Rebol by Carl Sassenrath?

January 30, 2011 at 3:00 AM
SpaghettiCode said...

That was one of the most hilarious timelines I've every read. Thanks for making my sunday. :D

February 13, 2011 at 3:10 AM
None said...

Very funny. You should be on TV.

April 17, 2011 at 12:45 AM
Besserweiser said...

There was a guy in 1939 who thought he should show the world and Poland The One Way.

May 15, 2011 at 12:10 PM
Krzysiek Troszczyński said...

'cos polish can manage 'it' many different ways. McGyver must be polish :)))  

May 23, 2011 at 4:35 PM
prateek singh said...

I’m impressed!!!
Really informative blog post here my friend. I just wanted to comment &
say keep up the quality work.
London Hotels 

June 25, 2011 at 4:07 AM
«Oldest ‹Older   201 – 400 of 708   Newer› Newest»

Post a Comment

Subscribe to: Post Comments (Atom)
 

AltStyle によって変換されたページ (->オリジナル) /