This really doesn't have much to do with Ancient UNIX, but I thought someone might appreciate it, anyway...
Culled off the USENET long ago:
The proliferation of modern programming languages which seem to have
stolen countless features from each other sometimes when it 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 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 understand
what the hell happened.
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 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 in 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
esthetically 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 in 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.
PL/I: You consume all available system resources, including all
the offline bullets. The DataProcessing&Payroll Department
doubles its size, triples its budget, acquires four new
mainframes, and drops the original one on your foot.
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.
FORTH: You yourself foot shoot.
Logo: You navigate your gun successfully to your foot using nice movement
commands, but find there is no way to shoot.
English:
You put your foot in your mouth, then bite it off.
And more....
===========================================================================
THE PROGRAMMER'S QUICK GUIDE TO THE LANGUAGES
The proliferation of modern programming languages (all of which seem to
have stolen countless features from one another) sometimes makes it
difficult to remember what language you're currently using. This handy
reference is offered as a public service to help programmers who find
themselves in such a dilemma.
TASK: Shoot yourself in the foot.
C: You shoot yourself in the foot.
C++: You accidentally create a dozen instances of yourself and shoot
them all in the foot. Providing emergency medical assistance 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."
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 with the attempts to shoot yourself anyways because
you have no exception-handling capability.
Pascal: The compiler won't let you shoot yourself in the foot.
Ada: After correctly packing your foot, you attempt to concurrently load
the gun, pull the trigger, scream, and shoot yourself in the foot. When
you try, however, you discover you can't because your foot is of the wrong
type.
COBOL: Using a COLT 45 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 re-tied.
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 the gun with which you shoot yourself
in the appendage which holds the gun with which you shoot yourself in
the appendage which holds...
FORTH: Foot in yourself shoot.
Prolog: You tell your program that you want to be shot in the foot. The
program figures out how to do it, but the syntax doesn't permit it to
explain it to you.
BASIC: Shoot yourself in the foot with a water pistol. On large systems,
continue until entire lower body is waterlogged.
Visual Basic: You'll really only _appear_ to have shot yourself in the
foot, but you'll have had so much fun doing it that you won't care.
HyperTalk: Put the first bullet of gun into foot left of leg of you.
Answer the result.
Motif: You spend days writing a UIL description of your foot, the bullet,
its trajectory, and the intricate scrollwork on the ivory handles of the
gun. When you finally get around to pulling the trigger, the gun jams.
APL: You shoot yourself in the foot, then spend all day figuring out how
to do it in fewer characters.
SNOBOL: If you succeed, shoot yourself in the left foot. If you fail,
shoot yourself in the right foot.
Unix:
% ls
foot.c foot.h foot.o toe.c toe.o
% rm * .o
rm:.o no such file or directory
% ls
%
Concurrent Euclid: You shoot yourself in somebody else's foot.
370 JCL: You send your foot down to MIS and include a 400-page document
explaining exactly how you want it to be shot. Three years later, your
foot comes back deep-fried.
Paradox: Not only can you shoot yourself in the foot, your users can, too.
Access: You try to point the gun at your foot, but it shoots holes in all
your Borland distribution diskettes instead.
Revelation: You're sure you're going to be able to shoot yourself
in the foot, just as soon as you figure out what all these nifty
little bullet-thingies are for.
Assembler: You try to shoot yourself in the foot, only to discover you
must first invent the gun, the bullet, the trigger, and your foot.
Modula2: After realizing that you can't actually accomplish anything in
this language, you shoot yourself in the head.