C/C++ Contributing Editors


Post-Mortem Debunker: Trust Me

Stan Kelly-Bootle

Whom do you trust (apologies to Johnny Carson)? Bill Gates? Groucho Marx? English language "experts"? One thing is certain: you can trust Stan to get you thinking about most anything, including matters of trust.


That’s a firm command rather than a weasel C/C++ volatile-register-type do-the-best-you-can compiler request. I insist. Indeed, I assert. You can run [sic], but you can’t hide. No exceptions. Trust me. Read my LISP! I have (((spoken)))!

In many CS language cultures, “trust” is brutally enforced by an army of high-paid lawyers versed in the ancient arcana of “contract.”

True, there are diverse meta-legal methodologies. My heart belongs to the Anglo-Viking pragmatic, Beowulf, Seamus Heaney tradition espoused by Saint Bjarne Stroustrup’s C++ approach. He, bless his iron-mail cotton socks, prefers the lack of in-built dogma. You are free to decide the pros/cons of, say, ultimate type-safety and garbage collection.

My French-Polish Iwonka (damn her randy hide) prefers Bertrand Meyer’s Eiffel Diktat. She rates Napoleon just a shake above Marat and Elvis. Chop! Your heads will roll! We know best. Sorry!

Sue Me

The in-joke of English 19th century Contract Law exams typically explores the failure of Supplier A to timely [sic] supply X tons of coal to Vendor B.

Phatic phrases such as “best efforts” spring to mind.

Then, there were endless case-pattern litigations when A’s horse kicked B’s head.

No malloc exceptions in those days. But many devious epistemological disputes arose at $200 per billable hour: What was in the minds of A and B? In particular, can we blame A’s horse for behaving horse-like, de deux maux? And surely B was at fault for exposing his head to predictable hooves?

As Groucho once said, “I got my legs in his teeth, and I wouldn’t let go.”

Sign Here

There is a CS “trust” spin to all this.

I have, as Neville Chamberlain declared in 1938/9, a “piece of paper” signed by Mister Hitler assuring World Peace.

Who said a written agreement is not worth the paper it’s written on?

I also have an impressive letter addressed to MOI. And signed by Bill Gates, no less.

Bill seems to be offering a new .NET Trust-Me World Order based on Open XML-SOAP.

There’s a new irresistible language called C# combining the best/worst of C++, Eiffel, and Java. Can’t be all bad?

George Jansen reminds me that C# can be pronounced musically as C sharp or maybe D flat?

Or, taking the “#” as one of the popular ASCII literals, we could say “C hash,” whence by Microsoft elision, “Cash.”

Thus, who can blame my old Borland hero Andjers for “crossing the park?”

Yet, in the effort to maintain C#/C++ co-existence, we must accept ever more semantic/syntactic wrappers.

Mon dieu! CLR is no longer our God-given acronym.

And we must tag our code as “managed C++” by default?

Else, who knows, endless years of mismanagement?

Trust Bill. He can outbid youse all.

Overdue Post Scripta

A beee-lated welcome to our new Senior Editor, Chuck Allison. And, likewise, an overdue farewell and thanks to Marc Briand. The highlight of many previous SD (Software Development) Conferences has been a dinner (known by the IRS as “working”) hosted by Marc for his contributors, whereby “mere” names on the masthead became real flesh ’n blood friends. That is not to say we all agreed on every “dark corner” of the C++ Standard, nor on the best C++ pedagogical methodologies. Try saying that after a generous coup de rouge. (“Le jour de boire est arrivé?”)

However, these meetings built an esprit that helped CUJ survive, nay thrive, through the many transitions that magazines are heir to.

Chuck Allison’s August 2001 editorial “The Name Game” is a timely reminder of the sneaky nature of natural language, the only means, alas, for discussing the C++ Standard and the sneaky nature of natural language!

Apart from the shifting semantics of function, functional, and functor, the marketing branch of our fair trade persists in claiming, e.g., “increased functionality.” This “functionality” lacks a decent metric and has generated much definitional bewilderment. I have (passim) dubbed it the F-word.

In the realms of “pure” mathematics, you’ll find the term cleavage used without a snigger. It’s a sort of Dedekind Cut only remotely connected with Jane Russell. (Bertie is more involved.)

But here’s the ultimate semantic tease. Plato distinguished arithmetike from logistike (where’s a decent Greek font when you need it?). Seems straightforward until you check his definitions: arithmetike was what we would now call the logical foundations of mathematics, while logistike referred to nuts ’n bolts calculation, a domain we now call “arithmetic.”

Stan Kelly-Bootle has been computing on and off since 1953 when he graduated from Cambridge University in Pure Mathematics and hacked on EDSAC I (the first true stored-program computer). He is a contributing editor for Linux Journal and a Jolt Judge for Software Development Magazine. With the demise of UNIX Review/Performance Computing, his 16-year-old Devil’s Advocate column has moved online to <www.sarcheck.com>. His many books include 680x0 Programming by Example, Mastering Turbo C, Lern Yerself Scouse, The Devil’s DP Dictionary, The Computer Contradictory, and Unix Complete. Under his nom-de-folk, Stan Kelly, his songs have been recorded by Cilla Black, Judy Collins, the Dubliners, and himself. Stan welcomes email via skb@atmail.net and his website <http://www.feniks.com/skb/>. Stan’s ramblings can also be found at <www.unixreview.com>.