Basic, Fortran, Cobol : These programming languages are well known and (more
or less) well loved throughout the computer industry. There are numerous other
languages, however, that are less well known that still have ardent devotees.
In fact, these little-known languages generally have the most fanatic admirers.
For those who wish to know more about these obscure languages and why they are
obscure I present the following catalog.
SIMPLE : SIMPLE is an acronym for Sheer Idiot's Monopurpose Programming
Linguistic Environment. This language, developed at the Hanover College for
Technical Misfits, was designed to make it impossible to write code with errors
in it. The statements are, therefore confined to BEGIN, END, and STOP. No
matter how you arrange the statements, you can't make a syntax error.
Programs written in SIMPLE do nothing useful. Thus they achieve the results of
programs written in other languages without the tedious, frustrating process of
testing and debugging.
SLOBOL : SLOBOL is best known for the speed, or lack of it, of its compiler.
Although many compilers allow you to take a coffee break while they compile,
SLOBOL compilers allow you to take a trip to Bolivia to pick up the coffee.
Forty-three programmers are known to have died of boredom sitting at their
terminals while waiting for a SLOBOL program to compile. Weary SLOBOL
programmers often turn to a related (but infinitely faster) language, COCAINE.
VALGOL : (With special thanks to Dan and Betsy "Moon Unit" Pfau) From its
modest beginnings in southern California's San Fernando Valley, VALGOL is
enjoying a dramatic surge of popularity across the industry. VALGOL commands
include REALLY, LIKE, WELL, and Y$KNOW. Variables are assigned with the =LIKE
and =TOTALLY operators. Other operators include the "CALIFORNIA BOOLEANS",
FERSURE, and NOWAY. Repetions of code are handle in FOR-SURE loops. Here is
a sample VALGOL program:
14 LIKE, Y$KNOW (I MEAN) START
%% IF
PI A =LIKE BITCHEN AND
01 B =LIKE TUBULAR AND
9C =LIKE GRODY^MAX
4K (FERSURE)^2
18 THEN
4I FOR I= LIKE 1 TO OH MAYBE 100
86 DO WAH + (DITTY^2)
9 BARF(I) =TOTALLY GROSS(OUT)
-17 SURE
1F LIKE BAG THIS PROGRAM
? REALLY
$$ LIKE TOTALLY (Y$KNOW)
VALGOL is characterized by its unfriendly error messages. For example, when
the user makes a syntax error, the interpreter displays the message GAG ME
WITH A SPOON.
LAIDBACK : Historically, VALGOL is a derivative of LAIDBACK, which was
developed at the (now defunct) Marin County Center for T'ai Chi, Mellowness
and Computer Programming, as an alternative to the more intense atmosphere in
nearby Silicon Valley. The center was ideal for programmmers who liked to
soak in hot tubs while they worked. Unfortunately, few programmers could
survive there for long, since the center outlawed pizza and RC Cola in favor
of bean curd and Perrier. Many mourn the demise of LAIDBACK because of its
reputation as a gentle and nonthreatening language. For Example, LAIDBACK
responded to syntax errors with the message, SORRY MAN, I CAN'T DEAL WITH THAT.
SARTRE Named after the late existenitial philosopher. SARTRE is an
extremely unstructured language. Statements in SARTRE have no purpose; they
just are there. Thus SARTRE programs are left to define their own
functions. SARTRE programmers tend to be boring and depressed and are no
fun at parties.
FIFTH : FIFTH is a precision mathematical language in which the data types
refer to quantity. The data types range from CC, OUNCE, SHOT, and JIGGER to
FIFTH (hence the name of the language), LITER, MAGNUM, and BLOTTO. Commands
refer to ingredients such as CHABLIS, CHARDONNAY, CABERBET, GIN, VERMOUTH,
VODKA, SCOTCH and WHATEVERSAROUND. The many versions of the FIFTH language
reflect the sophistication and financial status of its users. Commands in the
ELITE dialect include VSOP and LAFITTE, while commands in the GUTTER dialect
include HOOTCH and RIPPLE. The latter is a favorite of frustrated FORTH
programmers who end up using the language.
C- : This language was named for the grade recieved by its creator when he
submitted it as a class project in a graduate programming class. C- is best
described as a "Low-Level" programming language. In fact, the language
generally requires more C- statements than machine-code statements to execute
a given task. In this respect, it is very similar to COBOL.
LITHP : This otherwise unremarkable language is distinguished by the absence
of an "s" in its character set. Programmers and users must substitute "TH".
LITHP is said to be utheful in proceththing littth.
DOGO : Developed at the Massachusetts Institute of Obedience Training. DOGO
heralds a new era of computer-literates. DOGO commands include SIT, STAY,
HEEL and ROLL OVER. An innovative feature of DOGO is "PUPPY GRAPHICS", in
which a small cocker spaniel occasionally leaves a deposit as he travels
across the screen.
NEW PRODUCT ANNOUNCEMENT: 'C' Language Regression Package
Antiquity Spoffware Solutions
Announces
C-- Void Oriented Programming
Antiquity Spoffware Solutions is proud to announce its latest
fully integrated software package for C programmers. C Programmers
for years now have been frustrated with a myriad of functions
designed for almost sickening efficiency and control. Any programmer
knows that a language so flexible has its drawbacks: Universality.
C-- combines all the power of BASIC, the readability of COBOL, and the
wealth of string and graphics functions associated with FORTRAN.
C-- does away with floats and doubles, chars and ints and
manipulates data entirely in LONG integer form (for portability.)
Here are some examples:
/* This program generates an integer-oriented
#include
#LOADREGULARCLIBRARYFUNCTION (STDIO.H)
MAIN *OPENCURLYBRACKETPOINTINGLEFT
PRINTFORMATTEDOUTPUT ( "DEMONSTRATION OF C-- FUNCTIONS" ) SEMICOL
LET THENUMBER A EQUAL 10 SEMICOLON
LET THENUMBER B EQUAL 20 SEMICOLON
IF A .LT. B THEN DO SINGLEFUNCTION
PRINTFORMATTEDOUTPUT( NUMBER, STRING, A, "IS SMALLEST" )
SEMICOLON
OTHERWISE
IF B .LT. B THEN DO SINGLEFUNCTION
PRINTFORMATTEDOUTPUT( NUMBER, STRING, B "IS SMALLEST" )
SEMICOLON
OTHERWISE
DO NOTHING SEMICOLON
*CLOSECURLYBRACKETPOINTINGRIGHT
The above source, as you may have noticed, is not just a demonstration
of the ASS software team's life-long persistance in the generation of
efficient, compact, (and most of all) READABLE software.
The tried and true principles behind line-buffered input are sure to
delight the seasoned programmer. C-- is sure to invoke images of
keypunches and card readers and leave you happily chugging away at
keyboard.
How to program in "C"
---------------------
1] Use lots of global variables.
2] Give them cryptic names such as: X27, a_gcl, or Horace.
3] Put everything in one large .h file.
4] Implement the entire project at once.
5] Use macros and #defines to emulate Pascal.
6] Assume the compiler takes care of all the little details you didn't
quite understand.
"It's 5:50 a.m., Do you know where your stack pointer is?"
How to debug a "C" program.
---------------------------
1] If at all possible, don't. Let someone else do it.
2] Change majors.
3] Insert/remove blank lines at random spots, re-compile, and excecute.
4] Throw holy water on the terminal.
5] Dial 911 and scream.
6] There is rumour that "printf" is useful, but this is probably unfounded.
7] Port everything to CP/M.
8] If it still doesn't work, re-write it in assembler. This won't fix the
bug, but it will make sure no one else finds it and makes you look bad.
How to debug a 'C' program - addendum
-------------------------------------
1] Since you got it to compile, the problem must be in the Other Guys Code.
2] If it's all your code then the problem *MUST* be in those unreliable
Standard Libraries. See '1.' in the previous section.
3] Claim the bug reports are viscious lies meant to tarnish your sterling
reputation as a 'C' programmer (well aren't they?). After all, those who
wrote the reports couldn't even *read* your code. How could they possibly
know if there was a bug or not?
3.a] If they could read your code, review "How to program in 'C'", above.
4] Claim that there wouldn't be a problem if this stingy
Company/School/Wife/etc would spring for a copy of C++.
If you still have a Job/Degree objective/Wife/Mind/etc after utilizing the
above rules then you simply aren't trying hard enough.