Thursday, 1 February 2001

Death of Pascal

Listening to:

Mozart, string trio (divertimento) in E flat, KV 563. And there I was claiming that Mozart’s letter was K. I think the V here is the same as the V in Bach’s BWV, and that it means something like catalogue. The music is great in any case.

Perl Scripts and Pascal

I have re-organised my archived weblog entries so that reading down the page does move the reader forward in time. I have also added next month and last month buttons to them all, just as I have done here. To achieve the reordering I used the following Perl script:

$/ = "<hr>\n";

while (<>) { $foo[$i++] = $_; }
while ($i > 0) { print $foo[--$i]; }

(Historical accuracy forces me to admit to the above, but it would have been even more idiomatic if I’d used Perl’s push and pop functions.) My code assumes that the entries are delimited by <hr> (horizontal rule) elements. There’s also a whole bunch of stuff in front of the listing of the entries (the table setup, etc), and some after it. But this didn’t really matter because I used the facility in Emacs whereby you can select a region of text, pipe it to some external program, and have the program’s output replace what you had there originally. (Lest I be accused of editor-zealotry, let me add that you can do the same thing in vi.)

Before I leave you for the week, let me first say a few words about this article, another one from Salon about programming languages. This one is about the language Pascal, and how it’s gradually dying out. I don’t have too much problem with this report; it seems that Pascal really only holds out in the Delphi product. However, I really barfed at the following paragraph:

Pascal took a very mathematical approach to creating software: It forced the programmer to specify the type of each piece of data. That is, the programmer had to spell out whether variable x held some text, an integer or a real number. This didn’t prevent the programmer from doing something stupid like dividing by zero, but it allowed the compiler to stop the computer from doing something really stupid – like trying to multiply the word “rabbits” by 23. After Pascal’s birth in the early ’70s, the mathematicians in university computer sciences grooved on the complicated hierarchies created by type-checking a program.

As any reasonably qualified computer scientist could tell you, Pascal’s type system is not very mathematical at all. It certainly doesn’t feature any of the complicated hierarchies that get the type theorists going. It’s certainly a deal less sophisticated than the system in C++. But, if you want real sophistication, you use a language like SML, where you don’t need to specify the types of many variables at all, because it figures them out for you, using what’s known as type inference, but where you still get such groovy features as parametric polymorphic and higher order functions. (Check out this outline of a nice talk, for an explanation of what strong typing really is, intended for an audience of Perl people.)

And now for another bogosity:

Meanwhile, Pascal’s development splintered as people argued over the right way to do things. It’s almost as if the Pascal community acted like the French by defending the purity of their language – while the C++ world acted like the English, promiscuously absorbing words from other languages.

If Pascal was splintering, it can hardly be said to have been doing a great job of defending its purity. If it was splintering, it was in fact doing a reasonable job of trying to find itself a niche, with little regard for purity. Maybe Delphi is its only viable niche, right now, but hey, it’s a perfectly reasonable niche. The argument’s crap but just look at the way this author is setting up a really dirty set of connotations with which to tar Pascal. In the first paragraph, it’s academic and mathematical. (Real programmers don’t do maths, sheesh!) In the second, we cunningly associate Pascal with France, that well-known bastion of anti-capitalist un-American head-in-the-sand isolationism.

Disclaimer: Pascal was my first real programming language, but I haven't written in Pascal since 1990, and have no desire to ever do so again.

Monday, 5 February 2001

Granta 64 and a dead monitor

Listening to:

Mahler, symphony no. 4 in G major. Another traversal CD; soon I’ll be onto Mozart, the most well-represented composer in my collection.

Just read:

Granta 64: Russia, the wild east.

This was a good collection of pieces about Russia. (In fact, there was one non-Russia piece, but everything else was “on theme”.) There were a couple of fiction pieces, both of which I enjoyed, and the rest were all non-fiction. Given how far behind I am with my list, it should be no surprise when I say that there’s nothing about Putin in this collection; the modern things are about the era of Yeltsin and his last years.

The non-fiction is all interesting, though often rather depressing. For whatever reason, Russia was often a violent, scary place during the 20th century, and this is reflected here. There are two photo essays included, and both are very atmospheric.

A dead monitor

Our computer’s monitor expired on Saturday morning. I turned it on, it made a horrible graunching, scraping, croaking noise, and then smoke started to come out of the back. It was fairly foul smelling smoke too, I have to say. With luck it will be replaced tomorrow, thanks to the 2 year warranty.

No time for more.

Thursday, 8 February 2001

Up the duff

Listening to:

Shostakovich, symphony no. 11 in G minor, op. 103 “The year 1905”. A definite programme symphony this, it being a musical depiction of the events of 1905, when an attempted revolution in Russia was crushed by the Tsarist government. It’s exciting stuff, though it can also sound a bit like soundtrack music.

Holiday reading:

Kaz Cooke, Up the duff.

This is an amusing and informative book about pregnancy. The couple we stayed with in Brisbane "are" pregnant (apparently this is acceptable usage; you say the couple are pregnant, even though we all know that it's only the woman who's going to go through the really painful bits), and this was on their shelves. Being what you might call a “will read anything once” reader, I picked this down in a dull moment and really found it quite engrossing.

I’d never heard of her, but the author is apparently quite a famous comic writer in Australia (she even has a website). I found Up the duff a fascinating read. On the other hand, I can quite imagine women finding it rather off-putting. I don’t think that I’m particularly squeamish, that I could cope with all the mess of child-birth itself, but the descriptions of all the changes that the pregnant woman undergoes while the baby develops are really quite an eye-opener.

I’m writing a day late today because I spent half of my day yesterday waiting for the monitor to be delivered. It was, eventually, and so all is happiness on the home PC front.

Friday, 9 February 2001

Entry #141

Listening to:
Mozart, piano trio in C, K. 458.
I have lost an afternoon of my life to the evil that is Windows NT. In particular, would you believe that while it's possible to write
"mycmd" "arg"
into the command shell (i.e., the program CMD.EXE) when using it interactively, you can't do the same when using the C system call. It seems as if system is basically using
cmd /c
as its implementation. Certainly, it is the case that
cmd /c "mycmd" "arg"
doesn't work. Excuse me while I scream.

Tuesday, 13 February 2001


Listening to:

Shostakovich, film music for The Tale of the silly little mouse. If that isn't one of the more appealing titles for a classical work, I don't know what is. This is part of a CD of all sorts of film soundtracks by Shostakovich, and they're all pretty good, though not really very meaningful.

Just read:

Eucalyptus, by Murray Bail.

This is a beautifully written “fairy-tale” novel set in post-WWII Australia. It's the story of a father who decides that only someone who can name all of the species of eucalyptus trees on his big rural property (which species he has been obsessively collecting for years), will be allowed to marry his beautiful daughter.

There are lots of little stories embedded into the main narrative, and these, like the over-arching story-line, are told in an appealing, misty and distant tone. The characters are never really explained with any depth, but this seems reasonable as one feels they are playing out mythic roles in the larger drama. It is in this sense that I think it is a fairy-tale, not because it is at all cutesy or child-like.

The ending is clever, and provides a neat finish to a great read.

Now reading:

Hanna's daughters: a novel of three generations by Marianne Fredriksson.

Thursday, 15 February 2001

Desolation Island

Listening to:

Puccini, La Bohème.

Holiday reading:

Patrick O’Brian, Desolation Island.

Yes, yet another O’Brian novel (the 5th, if you’re starting to lose track). I really enjoyed this one, at least partially because it was again quite different in feel from the previous novels. In this novel the main military threat is a Dutch ship that is a lot bigger than Aubrey’s, the French don’t appear at all, and the Americans make an appearance. The descriptions of the Southern Ocean are very scary, and the thought of the poor Whitbread Round the World yachts having to contend with those sorts of conditions is made that much more vivid.

Context switching agway from HOL

I finally managed to release the latest version of the HOL theorem-proving system yesterday. Now I have to do a big context switch, get NT install scripts out my head, and work on other stuff.

Monday, 19 February 2001

Hanna’s Daughters

Listening to:

Oscar Peterson’s finest hour.

Just read:

Marianne Fredriksson, Hanna’s daughters.

This novel is a family epic over three generations, set in Sweden. Hanna, of the title, grows up at the end of the 19th century in a rural and poor part of Sweden near the border with Norway. She is the mother of Johanna, who is in turn the mother of Anna. (I wonder if there is a Swedish word for “female descendent” that they had to translate as “daughter”. Hanna has just one daughter, but then, people say things like “sons of Adam” to mean all men, so I’m clearly just being picky.)

The first section of the book, describing Hanna’s early life, is probably the best. Hanna’s world is the most foreign, and this accounts for much of the interest. However it’s definitely also the case that Hanna is the best characterised of all the characters in the book. Hanna is a strong woman, and she is portrayed sympathetically, despite being unfashionably illiberal and conservative in her attitudes. The author doesn’t win our sympathies by making her out to be anachronistically modern. Instead, Hanna is just well-drawn and this is a sign of good writing.

In this stage of the book, it’s also very interesting to get a glimpse at the historical events that led to the dissolution of the union between Norway and Sweden. The way this is portrayed in the book, it sounds as if the two countries were very close to going to war over the issue.

Johanna’s story is less interesting. I did find the image of Sweden “cowering behind its neutrality” during World War II an arresting one, but couldn’t help but feel that the Jewish immigrants were thrown in just for the sake of it. For a while, the description of growing up and living life in a 1920s urban environment (Göteborg) is quite engrossing, but it peters out. Anna’s story is less interesting still. Her voice is perhaps too accurately modern; full of psycho-babble about self-realisation etc.

The novel also suffers from having only two types of male. We are subjected to either the womanising charmer, or to the basically decent guy, slightly marred by a tendency to “rage” or spots of domestic violence. All in all, despite a promising start, the novel turns into a reasonably well-written soap opera. It comes complete with manipulative moments where you generally succeed in having a “bit of a cathart”, though you end up slightly resenting the author for throwing them in.

Now reading:

Terrence Deacon, The symbolic species.

Wednesday, 21 February 2001

Busy writing TPHOLs stuff

Listening to:

Shostakovich, piano trio #2 in E minor, op 67.

Writing time being spent elsewhere

Absolutely no time to burble today; I have to get some code working and then write it up for this year’s TPHOLs conference (notice the confusing way that while the conference is going to be in Edinburgh, the site is in Glasgow?)

Friday, 23 February 2001

Getting up early and a game recommendation

Listening to:

Bax, symphony no. 3.

Up early for the career...

Well I got the conference submission off, so it’s all in the lap of the gods now. I got up at 6am yesterday and today to do it, so I’m feeling pretty tired as I write this on Friday evening. Getting up an hour earlier than normal, and then rushing through the morning routine produces a result that is gratifying at the time: you get into the office that much earlier, and because you're only just out of bed, you feel quite fresh. Working late has never been as appealing to me as working early. By the time you get ’round to being there late, you’ve been there far too long, and you’re sick of the place. Whereas going in early means that your day’s extra hours are all the beginning of the day when you’ll feel positively raring to go.

Of course, it’s possible there is a flaw in my reasoning...

The latest game at home is The Longest Journey. We finished this a week or so ago, and thought it pretty neat. The finale seemed to be doing some seriously angling for a sequel it was so underplayed, but otherwise the story and the puzzles combined really well. So, that’s a recommendation, and you will note, a brand new link. I like to throw them in occasionally; the blue underlining looks so cool.

Wednesday, 28 February 2001

Entry #147

Listening to:
Sullivan, overture to Macbeth. This is Sullivan of Gilbert & Sullivan fame. As the great film Topsy Turvy made clear, Sullivan fancied himself as a serious composer, as well as, or perhaps instead of, a composer of comic opera scores. His serious music isn't bad, but it isn't really that memorable. Tuneful.
Still reading:
Deacon's Symbolic species. Heavy (and slow) going but this is due to the density of the material. Full of all sorts of interesting ideas and arguments that have changed my perspectives on a number of things. More when I finish it.
Oh yeah, this is Wednesday, and I should have been writing on Tuesday. Umm, this is because Tuesday disappeared. Something happened to it anyway.

More Pascal-bashing; this time from Bruce Tognazzini, famous for being an HCI guru for Apple in the 80s. It's a bit of an unreasoned rant really; he doesn't specify what it is about BASIC that is good, and what it is about Pascal, JavaScript and C that is bad. He further attacks C and Pascal for having had bad environments in which to develop, but again doesn't specify what was bad about them.

A much-cited, and interesting paper on why "Content is not king".