C more or less
Date: Tue, 16 Apr 91 13:16:47 EDT
From: [email protected]
To: [email protected], [email protected]
Subject: C more-or-less
[from rec.funny: C more-or-less]
C+-: (pronounced “C more or less”)
Unlike C++, C+- is a subject oriented language. Each C+- class
instance known as a subject, holds hidden members, known as prejudices
or undeclared preferences, which are impervious preferences, which are
impervious to outside messages, as well as public members known as
boasts or claims. The following C operators are overridden as
shown:
> | better than |
< | worse than |
>> | much better than |
<< | forget it |
! | not on your life |
== | comparable, other things being
equal |
C+- is a strongly typed language based on stereotyping and
self-righteous logic. The Boolean variables TRUE
and
FALSE
(known as constants in less realistic languages)
are supplemented with CREDIBLE
and DUBIOUS
,
which are fuzzier than Zadeh's traditional fuzzy categories. All
Booleans can be declared with the modifiers strong and weak. Weak
implication is said to “preserve deniability” and was
added at the request of the D.O.D. to ensure compatability with
future versions of Ada. Well-formed falsehoods (WFFs) are
assignment-compatible with all Booleans. What-if and why-not
interactions are aided by the special conditional evenifnot X then
Y.
C+- supports information hiding and, among friend classes only,
rumor sharing. Borrowing from the Eiffel lexicon, non-friend classes
can be killed by arranging contracts. Note that friendships are
intransitive, volatile, and non-Abelian.
Single and multiple inheritance mechanisms are implemented with
random mutations. Disinheritance rules are covered by a complex
probate protocol. In addition to base, derrived, virtual, and
abstract classes, C+- supports gut classes. In certian locales,
polygamous derivations and bastard classes are permitted. Elsewhere,
loose coupling between classes is illegal, so the marriage and divorce
operators may be needed:
marriage (MParent1, FParent1);
// child classes can now be derrived
sclass MySclass: public MParent1, FParent1
{ // define MySclass
}
sclass YourSclass: public MParent1, FParent2
// illegitimate
divorce (MParent1, FParent1);
marriage (MParent1, FParent2);
sclass YourSclass: public MParent1, FParent2
{ // OK now
}
Operator precedence rules can be suspended with the directive
#pragma dwim
, known as the “Do what I mean”
pragma. ANSIfication will be firmly resisted. C+-'s slogan is
“Be Your Own Standard.”
[from the april '91 issue of AIExpert]
--
Maurice Suhre
[email protected]
This joke is also available in plain
text.
Other humor in the GNU Humor
Collection.
Disclaimer
The joke on this page was obtained from the
FSF's email archives of the GNU
Project.
The Free Software Foundation claims no copyright on this joke.