Against torture / 2008-05-23

If you're a US resident, join up (more here). In case you aren't yet thoroughly enraged and disgusted, see here and then join up. What we really ought to demand is an accounting, but at a minimum we should have a commitment. SON OF A BITCH MUST PAY.

Functional programming to the rescue / 2008-05-09

Three days of JavaOne was enough to completely sour me on the entire idea of programming. I'm not really sure what did it. But then I made the right decision and went to the BayFP meeting. I left feeling quite rejuvenated, my faith in humanity and love of programming fully restored.

Obligatory JavaOne post / 2008-05-07

The first two days of JavaOne have been precisely as expected. Big, silly, lots of hype. But there's been some good stuff as well. The big hype efforts this year seem to be around JavaFX and Glassfish. I don't care about JavaFX at all, and as far as I can tell, nobody really does. But my sample is surely biased. Glassfish looks like a good direction, but we've all seen Spring and OSGI, so I think it's a fairly obvious direction at this point. There's also lots of hype about the JVM running on all kinds of devices, but so what?

Literate programming / 2008-05-01


Donald Knuth:

If people do discover nice ways to use the newfangled multithreaded machines, I would expect the discovery to come from people who routinely use literate programming. Literate programming is what you need to rise above the ordinary level of achievement. But I don’t believe in forcing ideas on anybody. If literate programming isn’t your style, please forget it and do what you like. If nobody likes it but me, let it die.

I guess that means Haskell programmers... Sounds about right to me!

(For the record, I know he intends something considerably more sophisticated than lhs, but anyway it's closer than almost everything else. In any case, it's a nice interview. What a guy...)

Misc / 2008-04-28

Tags: , ,

Saw Stars of the Lid last night. Completely awesome, highly recommended.

Stanley Fish has been on a roll. This week's column is pretty awesome:

The difference is that I feel a little dirty just for having repeated a scurrilous rumor even as I rejected it. Apparently Obama’s two opponents have no such qualms and are happily retailing, and wallowing in, the dirt.

And more / 2008-04-09


And more, now from ABC:

Then-Attorney General Ashcroft was troubled by the discussions. He agreed with the general policy decision to allow aggressive tactics and had repeatedly advised that they were legal. But he argued that senior White House advisers should not be involved in the grim details of interrogations, sources said.

According to a top official, Ashcroft asked aloud after one meeting: "Why are we talking about this in the White House? History will not judge this kindly."

Depressing / 2008-04-09

This post from Jack Balkin about the (lack of) possibility of war crimes prosecution makes me really sad and frustrated. More accountability for current officials is precisely the thing I want most from the new administration. Congress hasn't delivered. The new President won't deliver. It's disgusting and shameful. What are we supposed to do?

" can we explain letting them get off? We can’t have acquittals, we’ve got to have convictions."

More on effectiveness, formality, etc. / 2008-03-10


More interesting conversation on Roly Perera's blog, happening at a glacial pace over the course of some months. This is connected to Kiczales' OOPSLA keynote and the ensuing discussion. My comment is long, but I'll copy a bit here, because I think it captures my current thinking about this question:

Hitting the wall / 2008-03-10

In my last post, I translated the first part of Data types a la carte into Scala. I decided to push ahead into the next section, just for fun. The summary is: Scala's implicits are a very poor man's type classes, at least using the obvious encoding, and I am as always humbled by the cleverness of GHC.

Scala vs Skalleh / 2008-03-07

I apologize for what you're about to see...

As a little experiment, I decided to translate part of this pearl from Haskell to Scala. By this I mean literal translation, as opposed to an idiomatic implementation in Scala. Of course, this goes deeply against the grain of the Scala language. On the other hand, as I wrote here:

It certainly cuts across the grain of current practice, and the grain of the libraries. But I think it takes a long time to discern the grain of a language. And I think it takes a lot of pushing and prodding, which is why I think this kind of experimentation is so important.

For now, it's a reasonable default to stick to a style that reflects the origins of the language (mostly Java-style OO with some functional goodies and richer types). I definitely think we should be open to the possibility that Scala style will diverge more radically from this tradition.

At this point, I'd probably replace the word "important" with "fun and maybe sort of worthwhile." Anyway, let's get started...