mirror of
https://github.com/opsxcq/mirror-textfiles.com.git
synced 2025-08-11 12:04:03 +02:00
185 lines
8.2 KiB
C
185 lines
8.2 KiB
C
Article 293 of rec.humor.funny:
|
||
>From: stevenj@umbc3.umd.edu
|
||
Subject: Tenne-C
|
||
Message-ID: <1877@looking.UUCP>
|
||
Date: 27 Jul 88 15:30:02 GMT
|
||
|
||
I was recently (as in yesterday) given this announcement for
|
||
a new C compiler. Please do not direct any questions concerning
|
||
this product to me - all I know is what you see here. Please
|
||
contact the company for further information. Also, this is long,
|
||
so please edit accordingly when replying via news.
|
||
-Steven
|
||
stevenj@umbc3.umd.edu ;-)
|
||
-----------------------------------------------------------------
|
||
|
||
|
||
|
||
TITLE: Tenne-C Announcement
|
||
|
||
|
||
|
||
Tenne-C programming language
|
||
... from Good Ol' Boy Systems.
|
||
|
||
|
||
NOTE: The following is rated PG; programmer's guidance should be exercised.
|
||
|
||
For all those unfamiliar with Tenne-C, the comment delimiter is WHISPER. The
|
||
computer stores all WHISPERed comments in memory, but the instruction execution
|
||
unit can never quite decode them, so they are ignored. Some beta site users
|
||
have reported an occasional problem with IBM clone machines. These machines
|
||
may get slightly confused or mildly paranoid due to the whispered remarks in
|
||
the background, but the effects are usually limited to an occasional mutterance
|
||
printed on the display. Note that the optional extended obcenity instruction
|
||
set should not be installed in clone machines. Should such a machine crash,
|
||
you could be arrested for making an obscene clone fall.
|
||
|
||
|
||
General Idiosyncrasies of Tenne-C
|
||
|
||
Data is referred to as Ciphers; the start of a data section should be so
|
||
labeled. Data which is external to a given file is denoted by the term
|
||
YONDER, similar to the EXTERNAL directive.
|
||
|
||
Single arguments are not passed to functions individua lly; rather, multiple
|
||
passes are made simultaneously to all functions. Thus, in Tenne-C, we speak of
|
||
feuds rather than arguments. This is an extremely powerful, albeit somewhat
|
||
destructive feature of Tenne-C.
|
||
|
||
Relational operators work similarly to those in other languages, but in Tenne-C
|
||
these are called kinfolk operators. It will be noted that some of these
|
||
interrelaiite better than others. Kinfolk operators include:
|
||
|
||
Bettern (mines) bettern (yourn)
|
||
Boutlack (mines) boutlack (yourn)
|
||
Nearlyboutlack (mines) nearlyboutlack (yourn)
|
||
Worsern (yourns) worsern (mine)
|
||
Nearlyboutsgoods (yourns) nearlyboutsgoods (mine)
|
||
Lack (mines) lack (yourn)
|
||
Sortalack (mines) sortalack (yourn)
|
||
Differrtn (yourns) differrtn (mine)
|
||
|
||
The Boolean operators are somewhat different than most. Note the lack of AND
|
||
and OR operators:
|
||
|
||
taint
|
||
istoo
|
||
tis
|
||
aintdunnit
|
||
nary
|
||
nope
|
||
|
||
Variable assignments must be explicitly declared with the AHDODECLARE
|
||
directive, although one declaration can serve a block of variables. Variable
|
||
assignments can be quite interesting and flexible, as can be seen in the
|
||
following examples:
|
||
|
||
ahdodeclare: a's nearlybout 3
|
||
b's zacktly 4
|
||
c's bout 2
|
||
d's morerless TWEV
|
||
e's 2, an imeanit WHISPER this is a constant
|
||
|
||
Certain constants are implicit, such as SCOSHE, LIBBIT, FAV, SEM, NAN, LEM,
|
||
TWEV, THUTTY, etc. Such obvious values need not be declared, as they reside in
|
||
the liberry books.
|
||
|
||
Arrays must be declared with the AHDODECLARE statement, and are referred to as
|
||
messa, as in:
|
||
|
||
Ahdodeclare(dinner) messa(fish) TWEV
|
||
|
||
Note that until you get the hang of array declarations, you may encounter a
|
||
SYNTEXT ERROR; this is a syntax error which has been taken out of context.
|
||
|
||
The program section is referred to as CHORES and is labeled as such. Several
|
||
loop and conditional constructs are available. These include the following:
|
||
|
||
Hauloff and do
|
||
Fer, til loop
|
||
Whol, longasyerattit
|
||
Iffen, theyen
|
||
Yehbut, nowait
|
||
|
||
Code is grouped into hopefully functional units with the standard, [] and ()
|
||
operators, although they are given slightly different names. They are still
|
||
called braces, but the [] are called kibbuls and the () are called bits. Thus,
|
||
you can have braces and bits or kibbuls and bits. Braces and kibbuls are, of
|
||
course, meaningless.
|
||
|
||
If a KIBBITZ ERROR is encountered at compile time, that is a single kib [ with
|
||
a pair of bits (). The ommision of a single ] can also result in a NO BULL!
|
||
error. Very serious compiler errors will be preceeded by the SELF message.
|
||
That's right, brace yourself. We're talking about such errors as SOURCE FILE
|
||
TURNED TO TRASH, SOURCE FILE CONVERTED TO RUN FILE, HEX PUT ON SOURCE FILE,
|
||
that sort of thing. Errors of this type will be followed by the message "START
|
||
ALL OVER FROM SCRATCH", and the offending source file will, of course, be
|
||
deleted.
|
||
|
||
Error messages can be quite strong indeed. We have one of the most arrogant
|
||
compilers in the business, a source of great pride for us. Typical error
|
||
messages include:
|
||
|
||
WELL, IF THAT AIN'T ABOUT THE DUMBEST DANG THANG I EVER SEEN!
|
||
WHADJA DO THAT FER?
|
||
ERROR TWENNY SEM, DUMB AICE!
|
||
DAMMIT, BOY, HOW MANY TIMES I GOT TO TELL YOU?!
|
||
|
||
The compiler is referred to as the THRASHER and is invoked with the simple
|
||
THRASH directive. BE SURE NOT TO OMIT THE "H" FROM THIS COMMAND!!! If you are
|
||
unsure whether you want to compile the entire program, you may use the more
|
||
general THRASH AROUND command.
|
||
|
||
Good Ol' Boy Systems still clings tenaciously to the notion that single-sided
|
||
diskettes are better than double-sided diskettes. We maintain that a
|
||
single-sided diskette is in opposition to the laws of physics as we know them
|
||
today. However, we further maintain that, at some time in the future, Good Ol'
|
||
Boy Systems will be the first to discover the unlimited storage of the
|
||
heretofore undiscovered "nether side" of single-sided diskettes. Now THAT,
|
||
folks, is virtual disk space.
|
||
|
||
A software linker is not yet available. Until the virtual disk space is truly
|
||
solved, we strongly recommend double sided disk drives. You can then purchase
|
||
our hardware linker, which allows you to superglue two single-sided diskettes
|
||
together.
|
||
|
||
We're working on other things, too. For instance, there's our new operating
|
||
system, MS-HOSS, with the 'Mater Vine file structure. And for 'Mater Vine
|
||
support, there's 'Mater Stakes. And if you thought SideKick was good, wait til
|
||
you see our new ButtKick utility. Expected to be widely available by the end
|
||
of next month, regardless of what month this be, it is being developed using
|
||
our powerful new Four Barrel Tenne-C. While we aren't yet ready to develop a
|
||
Turbo Tenne-C, we feel that the high data compression ratio of Four Barrel
|
||
Tenne-C will suffice.
|
||
|
||
Here is a sample of our work. This is part of our new floating point package,
|
||
written in LOWLIFE, our low-level programming language.
|
||
|
||
UNSTACKUMDOTNUMBER WHISPER rip number off the stack
|
||
JIP DOTREMOVER WHISPER jump if punctuated
|
||
DONTDONOTHING WHISPER no op
|
||
JUMPEM2DGITBACK WHISPER return
|
||
GUMDROPS4EARPLUGS WHISPER sweet things in my ear
|
||
|
||
DOTREMOVER:
|
||
RDLDOTNUMBER WHISPER Rikki, don't lose that number
|
||
ASRDOTNUMBER WHISPER shift the number right
|
||
JISPDOTREMOVER WHISPER jump if still punctuated
|
||
ABSOLUTELYNOT WHISPER negate number and take absolute value
|
||
BZZBZZBZZ WHISPER WHISPER WHISPER EM2DGITBACK:
|
||
RTS WHISPER return to stack
|
||
RETURNS WHISPER return estimated truncated unary radix
|
||
WHISPER numerix stuff
|
||
|
||
--
|
||
THIS SPACE Andrew B. Peed
|
||
FOR HIRE AT&T Bell Laboratories
|
||
Financing Available!
|
||
|
||
|
||
--
|
||
Edited by Brad Templeton. MAIL, yes MAIL your jokes to watmath!looking!funny .
|
||
One joke per submission, with descriptive "Subject:" and no form feeds, please!
|
||
Attribute the joke's source if at all possible. I will reply, mailers willing.
|
||
|