Soapbox

Objects are aristotelician

One of the unquestioned assumptions behind object-oriented programming is that objects are instances of a class, and thus implicitly stay that way. This is akin to the philosophical concept of nature, as in an invariant quality of something, that cannot be changed:

But is there any one thus intended by nature to be a slave, and for whom such a condition is expedient and right, or rather is not all slavery a violation of nature?

There is no difficulty in answering this question, on grounds both of reason and of fact. For that some should rule and others be ruled is a thing not only necessary, but expedient; from the hour of their birth, some are marked out for subjection, others for rule.

Again, the male is by nature superior, and the female inferior; and the one rules, and the other is ruled; this principle, of necessity, extends to all mankind.

It is clear, then, that some men are by nature free, and others slaves, and that for these latter slavery is both expedient and right.

Aristotle, Politics I, 5 (emphasis mine)

Needless to say, this concept is reactionary. One may well object that given slavery’s omnipresence in antiquity, even a great philosopher such as Aristotle could not be entirely free of the prejudices of his time. This conveniently ignores the fact Aristotle was a pupil of Plato, himself a disgruntled aristocrat who collaborated with Spartans when they overthrew Athenian democracy after the Peloponnesian war, and is arguably one of the theoretical founders of the totalitarian state. I would say it is rather the presumed greatness of Aristotle that should be reexamined, but I digress. For more on this subject, read Karl Popper’s The Open Society and its Enemies – Volume 1, The Spell of Plato.

Thus, OOP carries within it the conservatism of Plato and Aristotle, people who resented how the young Athenian democracy had usurped the aristocracy’s natural (in their eyes) right to rule over others. This is not just an academic consideration. Computer programmers influence society, specially those who work for governmental information systems, and if you consider the Sapir-Whorf hypothesis, the language they use affects the way they think.

This is why I like Python’s ability to morph an object from one class to another:

Python 2.2.1 (#1, Apr 18 2002, 13:06:27)
[GCC 2.95.3 20010315 (release)] on sunos5
Type "help", "copyright", "credits" or "license" for more information.
>>> class Slave:
...     def whip(self):
...             return 'Yes, master'
...
>>> class Freeman:
...     def whip(self):
...             return 'Die, fascist scum!'
...
>>> man = Slave()
>>> man.whip()
'Yes, master'
>>> man.__class__ = Freeman
>>> man.whip()
'Die, fascist scum!'

Chicken Hawks

Weiler’s law: Nothing is impossible for the man who doesn’t have to do it himself.

An interesting column in the Guardian on “Chicken Hawks“, people who generally advocate aggressive military intervention while they themselves were enthusiastic draft-dodgers during the Vietnam war.

During World War I, while the flower of Europe’s youth was being packed off to be butchered by the millions in places like Verdun, cowards who had managed to be exempted had the gall to criticize loudly the supposed timidity of the soldiers and generals from the safety of the rear. This was captured memorably in novels like Erich Maria Remarque’s “Im Westen, nichts Neues” (Nothing new on the Western front).

This bred huge resentment among returning veterans that led to the takeover of Germany by the Nazis and the rise of fascistic movements that fatally wounded the French Republic, leading to the Pétain collaborationist regime. Heinlein’s “Starship Troopers” explores this idea further in a world where citizenship is contingent on military service.

Update (2002-10-25):

An excellent article illustrating how brazen chickenhawks can be. To quote the tag line: Jeff Berry doesn’t like it when draft dodgers question the patriotism of veterans.

Laurent Lafforgue awarded the Fields Medal

Le Monde article in French (good to see that in France at least, Mathematics can still make the front page, an editorial page and a biographical profile in the newspaper of record)

For the French-challenged, the Mathematical Association of America article.

The prestigious Fields Medal is the equivalent of the Nobel prize for Mathematics (except, unlike the more pedestrian Nobels, it is awarded only once every four years). One of the winners this year is Laurent Lafforgue.

He was one of my TAs preparing us for the competitive entrance exams to the Grandes Écoles like Polytechnique or Normale Sup (a “colleur” in French) when I was in my first year of preparatory classes at the Lycée Louis-le-Grand in Paris. The problem, of course, was that he was so brilliant he had no idea which problems were reasonable and which all but impossible for lesser mortals…

Update (2002-09-23): Salon.com has an article as well.

‘blogs are not the end-it-all of journalism

Online or otherwise.

This excellent article by Andrew Orlowski, the San Francisco correspondent of the excellent British IT-zine “The Register” debunks this delusion, the key argument being that weblog authors do not have the financial resources or the determination to dig out wrongdoing by the powerful. He also hilariously deflates US newspapers’ sanctimonious sense of self-importance.

Obituary: Edsger Dijkstra and Laurent Schwartz

Two great people passed away recently. The frivolous mass media did not widely report on them, as they prefer to fawn on “celebrities”, but each of them had a more significant and fundamental influence on our world than any two-bit actor or airhead princess ever will.

Laurent Schwartz, a French mathematician, did rate an obituary in Le Monde, mostly because of his courageous struggle against France’s colonial war of oppression in Algeria. He is the inventor of the theory of distributions, which extends ordinary functions to cope with things such as the Dirac delta “function”. It is a cornerstone of modern mathematical analysis and is used in signal analysis, itself the cornerstone of the technologies used to transmit data over analog media such as DSL.

Edsger Dijkstra, best known as the curmudgeonly Dutchman who advocated banning the goto statement, was a pioneering computer scientist who invented, among his many contributions, the algorithm which bears his name to find the shortest path in a graph and which is the basis for routing in the Internet.

You wouldn’t be able to read this page without these mens’ work.