Programming Language Selection Made Easy With such a large selection of programming languages it can be difficult to choose one for a particular project. Reading the manuals to evaluate the language is a time consuming process. On the other hand, most people already have a fairly good idea of how various automobiles compare. So in order to assist those trying to choose a language, we have prepared a chart that matches programming languages with comparable automobiles. Assembler A Formula I race car. Very fast, but difficult to drive and expensive to maintain. FORTRAN II A Model T Ford. Once it was the king of the road. FORTRAN IV A Model A Ford. FORTRAN 77 A six-cylinder Ford Fairlane with standard transmission and no seat belts. COBOL A delivery van. It's bulky and ugly, but it does the work. BASIC A second-hand Rambler with a rebuilt engine and patched upholstery. Your dad bought it for you to learn to drive. You'll ditch the car as soon as you can afford a new one. PL/I A Cadillac convertible with automatic transmission, a two-tone paint job, white-wall tires, chrome exhaust pipes, and fuzzy dice hanging in the windshield. A black Firebird, the all-macho car. Comes with optional seat belts (lint) and optional fuzz buster (escape to assembler). ALGOL 60 An Austin Mini. Boy that's a small car. Pascal A Volkswagon Beetle. It's small but sturdy. Was once popular with intellectuals. Modula II A Volkswagon Rabbit with a trailer hitch. ALGOL 68 An Austin Martin. An impressive car, but not just anyone can drive it. LISP An electric car. It's simple but slow. Seat belts are not available. PROLOG, LUCID Prototype concept-cars. Maple, MACSYMA All-terrain vehicles. FORTH A go-cart. LOGO A kiddie's replica of a Rolls Royce. Comes with a real engine and a working horn. APL A double-decker bus. It takes rows and columns of passengers to the same place all at the same time. But, it drives only in reverse gear and is instrumented in Greek. Ada An army-green Mercedes-Benz staff car. Power steering, power breaks, and automatic transmission are all standard. No other colors or options are available. If it's good enough for the generals, it's good enough for you. Manufacturing delays due to difficulties reading the design specification are starting to clear up. ------------------------------------------------------------------------------- Which language is right for you? In order to help you make a competent, uncomplicated choice concerning the competition between complex, incompatible computer compilers, we have composed this complete, compact, composite compendium comprising comparisons to compensate for the complaints and complements of their compromises. We hope you find it comprehensible rather than compost. Assembler You shoot yourself in the foot. Ada The Department of Defence shoots you in the foot after offering you a blindfold and a last cigarette. BASIC (interpreted) You shoot yourself in the foot with a water pistol until your leg is waterlogged and rots off. BASIC (compiled) You shoot yourself in the foot with a BB using a SCUD missile launcher. C++ You create a dozen instances of yourself and shoot them all in the foot. Not knowing which feet are virtual, medical care is impossible. COBOL USE HANDGUN.COLT(45), AIM AT LEG.FOOT, THEN WITH ARM.HAND.FINGER ON HANDGUN.COLT(TRIGGER) PERFORM SQUEEZE. RETURN HANDGUN.COLT TO HIP.HOLSTER. csh After searching the manual until your foot falls asleep, you shoot the computer and switch to C. dBase You buy a gun. Bullets are only available from another company and are promised to work so you buy them. Then you find out that the next version of the gun is the one that is scheduled to actually shoot bullets. FORTRAN You shoot yourself in each toe, iteratively, until you run out of toes. You shoot the 6th bullet anyway since no exception-processing was anticipated. Modula II You perform a shooting on what might currently be a foot with what might currently be a bullet shot by what might currently be a gun. Pascal Same as Modula-2 except the bullet is not the right type for the gun and your hand is blown off. PL/I After consuming all the system resources including bullets, the data processing department doubles it's size, acquires two new mainframes, and drops the original on your foot. Smalltalk, Actor, et al. After playing with the graphics for three weeks the programming manager shoots you in the head. Snobol Grab your foot with your hand and rewrite your hand to be a bullet. ------------------------------------------------------------------------------- How to Determine Which Programming Language You're Using! The proliferation of modern programming languages which seem to have stolen countless features from each other sometimes make it difficult to remember which language you're using. This guide is offered as a public service to help programmers in such dilemmas. 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 rapidly shooting at everyone in sight. 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 ones 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 Defence will kidnap you, stand you up in front of a firing squad, and tell the solders, "Shoot at his feet." Modula/2 After realizing that you can't actually accomplish anything in the language, you shoot yourself in the head. sh, csh, 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. APL You hear a gunshot, and there's a hole in your foot, but you don't remember enough linear algebra to understand what in the world happened. This page is from an article about Generic Message Translation: Meera M. Blattner, Lawrence T. Kou, John W. Carlson, and Dougles W. Daniel. "A Visual Language for Generic Message Translation." (1988 IEEE Workshop on Visual Languages)