Which language shall I use ...

The proliferation of modern programming languages which seem to have
stolen countless features from each other sometimes makes it difficult
to remember which language you're using.  This guide is offered as a
public service to help programmers in such dilemmas.

   C:          You shoot yourself in the foot.

   Assembly:   You crash the OS and overwrite the root disk.  The system
               administrator arrives and shoots you in the foot.  After a
               moment of contemplation, the administrator shoots himself
               in the foot and then hops around the room rabidly shooting
               at everyone in sight.

   APL:        You hear a gunshot, and there's a hole in your foot, but
               you don't remember enough linear algebra to undestand what
               the intervening processes were.

   C++:        You accidentally create a dozen instances of yourself and
               shoot them all in the foot.  Providing emergency medical
               care is impossible since you can't tell which are bitwise
               copies and which are just pointing at others and saying,
               "That's me, over there."

   Ada:        If you are dumb enough to actually use this language, the
               United States Department of Defense will kidnap you, stand
               you up on front of a firing squad, and tell the soldiers,
               "Shoot at his feet."

   MODULA-2:   After realizing that you can't actually accomplish anything
               in the language, you shoot yourself in the head.

   Pascal:     Same as Modula-2, except the bullets are the wrong type and
               won't pass through the barrel.  The gun explodes.

   sh,csh,etc: You can't remember the syntax for anything, so you spend
               five hours reading man pages before giving up.  You then
               shoot the computer and switch to C.

   Smalltalk:  You spend so much time playing with the graphics and
               windowing system that your boss shoots you in the foot,
               takes away your workstation, and makes you develop in
               COBOL on a character terminal.

   FORTRAN:    You shoot yourself in each toe, iteratively, until you run
               out of toes, then you read in the next foot and repeat.  If
               you run out of bullets, you continue anyway because you
               have no exception-processing ability.

   ALGOL:      You shoot yourself in the foot with a musket.  The musket
               is aesthetically fascinating, and the wound baffles the
               adolescent medic in the emergency room.

   COBOL:      USEing a COLT45 HANDGUN, AIM gun at LEG.FOOT, THEN place
               ARM.HAND.FINGER on HANDGUN.TRIGGER, and SQUEEZE.  THEN
               return HANDGUN to HOLSTER.  Check whether shoelace needs to
               be retied.

   BASIC:      Shoot self in foot with water pistol.  On big systems,
               continue until entire lower body is waterlogged.

   SNOBOL:     You grab your foot with your hand, then rewrite your hand
               to be a bullet.  The act of shooting the original foot then
               changes your hand/bullet into yet another foot (a left
               foot).

   LISP:       You shoot yourself in the appendage which holds the gun
               with which you shoot yourself in the appendage which holds
               the gun with which you shoot yourself in the appendage
               which holds the gun with which you shoot yourself in the
               appendage which holds...

   SCHEME:     You shoot yourself in the appendage which holds the gun
               with which you shoot yourself in the appendage which holds
               the gun with which you shoot yourself in the appendage
               which holds the gun with which you shoot yourself in the
               appendage which holds... ...but none of the other
               appendages are aware of this happening.

   English:    You put your foot in your mouth, then bite it off.
 
   MICROSOFT C++ with WINDOWS SDK:
               You write about 100 lines of code to print "Hello, world!"
               in a dialogue box, only to have a UAE pop up when you click
               on OK.  This shuts down the program manager, leaving you
               nothing but a screensaver.  You then fly to Washington and
               shoot Bill Gates in the foot.

  LOGO:        You tell a turtle to draw a picture of a foot and a gun,
               then shoot the turtle.

  SQL:         You select all instances of feet from the database,
               lock them (to prevent anyone else trying to shoot
               any of them at the same time), order them by size and
               handedness, identify your own, shoot it, and then
               release the lock so that others may shoot themselves
               in their own feet again.