If you try to solve a hard problem, the question is not whether you will use a powerful enough language, but whether you will (a) use a powerful language, (b) write a de facto interpreter for one, or (c) yourself become a human compiler for one. [...]
This practice is not only common, but institutionalized. For example, in the OO world you hear a good deal about "patterns". I wonder if these patterns are not sometimes evidence of case (c), the human compiler, at work. When I see patterns in my programs, I consider it a sign of trouble. The shape of a program should reflect only the problem it needs to solve. Any other regularity in the code is a sign, to me at least, that I'm using abstractions that aren't powerful enough-- often that I'm generating by hand the expansions of some macro that I need to write.
As far as goings-on: Got up, went to the Tartan, laid out some stuff, had lunch at Primanti with combinator, came back, went to Paul's CDs with combinator, techstep, and absolution. The weather is as delightful as ever, but we got a bus back from Bloomfield. Somehow got sucked into a game of ricochet robot with cdinwood. I did not get too terribly clobbered. But then she had to do a Japanese dialogue thing, so it was back to the Tartan again. Mmm, free pizza. Martin theoretically finished his guest comic, but the text at the bottom is futzed so I have to wait for him to return.
There are people who I interact with that are not on livejournal. Really. I think.
I think I have finally come around and gotten to like "Italian Leather Sofa", which was at one point the only song on Cake's "Fashion Nugget" that I didn't like.