archives

Off Topic Humour: New Programming Language C+-

There's finally a replacement for the commonly used programming language, C++ -- yes, it's 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 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 >> way 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 Department of Defense to ensure compatibility 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.

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."

Java Generics, Arrays, and Comparables

Tim Bray is struggling with the way Java integrates generics and interfaces,

Some day I must find out why generic declarations extend rather than implement interfaces. Grr.

Kinda makes me understand what my students go through when they first encounter Ada's generic model (which is much easier to understand, I hasten to add).

Transducer Composition and CPS

I am really intrigued by the short abstract of Olin Shivers. Transducer Composition and CPS, but for some reason it seems to be the only reference to it on the web. Can anyone suggest a replacement reading (using continuations for describing push/pull composition of separately defined components)? Ideally it would allow components with more than one input and output, but that's too much to ask :-)