Monday, May 08, 2006


The longest ever comp.lang.eiffel thread

The longest thread in the history of comp.lang.eiffel was started by Object "Guru" Robert Martin at midnight on July 3 1995. The thread grew to encompass more than a thousand posts, and spawned dozens of follow-up threads. What was it that could have brought such life to the newsgroup?

Robert Martin had just read Bertrand Meyer's book "Object Success", and took exception to Bertrand Meyer's "Prudent Hiring Principle: Beware of C hackers", where Bertrand wrote:
A "C hacker" is somewone who has had too much practice writing low-level C software and making use of all the special techniques and tricks permitted by that language.
Why single out C? First, interestingly enough, one seldom hears about Pascal hackers, Ada hackers or Modula hackers. C ... typifies a theology of computing where the Computer is the central deity and its altar reads Efficiency. Everything is sacrificed to low-level performance, and programs are built in terms of addresses, words, memory cells, pointers, manual memory allocation and deallocation, unsafe type conversions, signals and similar machine-oriented constructs. In this almost monotheist cult, where the Microsecond and the Kilobyte complete the trinity, there is little room for such idols of software engineering as Readability, Provability and Extendibility.
Not surprisingly, former believers need a serious debriefing before they can rejoin the rest of the computing community and its progress towards more modern forms of software development.
The above principle does not say "Stay away from C hackers", which would show lack of faith in the human aptitude to betterment. There have indeed been cases of former C hackers who became born-again O-O developers. But in general you should be cautious about including C hackers in your projects, as they are often the ones who have the most trouble adapting to the abstraction-based form of software development that object technology embodies.
Robert wrote a detailed rebuttal, but cross-posted it to other groups such as comp.lang.c, comp.object and, an action that was sure to stir up the hornets.

I'm not going to attempt to summarise the thread - that would be a major undertaking. Instead I've republished an editorial that Richie Bielak wrote for the last ever issue of Eiffel Outlook magazine, in which Richie distils the core argument into a single issue - Design vs. Code.

Considering that almost every job currently available requires either Java or C#, it is clear to me that Bertrand Meyer has won the day.

It is also clear that C and C++ remains in widespread use in the open source community. Mainly I believe because it is so hard to run software written in interpreted languages (dependency hell), and because there are still few Ada/Eiffel/Modula open source programmers.
Post a Comment

<< Home

This page is powered by Blogger. Isn't yours?