May seems to be one of those months where nothing goes right for me.I've gotten in trouble, wit a former job, grumbling about things atwork, so I'll provide no content, but my level of satisfaction withmy job dropped another notch today. It's slowly inchingits way from being "great job where I'll work extra hard because thingsare cool" to "good job that I'm generally happy with, but don't feelall that special about it".
(section not shown)
And, of course there's the whole being treated like crap and booting thegirlfriend thing... which happened the same way in another direction lastyear.. and the final that didn't go so well.. To top it off, on the way towork today, I got almost run over, twice. The first car didn't seem to rememberfrom driving school that when a bike is in the middle of the road, you'resupposed to treat it like a car, and the car actually touched my leg as itzoomed past, half in my lane, and half in the empty lane to my left. The secondcar ignored my hand signal that I was going straight and did a right turn rightin front of me from the left lane, almost causing me to hit them. In the future,perhaps I shall carry rocks with me on my bike to throw at cars that endangermy health.. either that, or I'll just get a horn. If I were the superstitioussort, I'd plan to just hibernate through every May.
On the upside, last night I went and met with some philosophical folk at CMUand discussed Mathematics and Language until after midnight. It was the firstsuch meeting, and so they don't have a name yet. We have some ideas, andfortunately their names are free in DNS, but it would not be wise to repeatuntil we've decided and registered what we want.
I continue to think about the difference between compile-time, load-time, andrun-time information available to a program that affects its amount ofstaticicity, the push to make ever-smarter compilers to push as much aspossible into compile-time, and interesting tools like Transmeta's code morphingand DEC's FX!32 (now defunct) that rely on information not (usually) availableto even the smartest theorem-solver that can optimize a binary. It's interestingto think about programs adapting themselves as they run, turning on or offcaches, inverting flow controls to avoid branches, memoizing, and the like.It's always been disappointing to me that so few programming languages providea good way to tell the compiler relevant information for good optimization.I wonder if generally runtime profile information for optimization tends to bedone by associating each possible branch or arrangement of code with some kindof a seperate table that a smart loader would use toapply-optimizations-while-loading, or if that's too complex/not flexible enough,and instead the binary is directly modified.. if the latter, there are allsorts of issues with verifiability -- how can we tell the difference betweena virus-infected or trojan binary and one that's just optimized differently?Depending on how free-form the table idea is, perhaps a hack could bewritten partly or entirely in that form too. In that case, the 'allow user codeto change tables but not binaries' is really dangerous.. Either the system needsto monitor programs (attach via a tracing mechanism?) to modify such binaries,or only root's running of programs can cause them to be modified.. both arepoor solutions. One could imagine per-user tables, but that'd be kind ofspace/complexity wasteful (although perhaps better optimizations are possiblethat way). Transmeta gets around this, I imagine, by using special CPU features.I don't know how FX!32 did it. What I can remember of how it advertised how itworked seems pretty weird.
Kids keep walking by and wonder what happened to the cats. It makes me sad..
If you want to see some of the much-talked about Iraq pictures, and haven'tseen them on TV (I'm guessing they're on there -- I don't watch), take alook here. Note that that *IS* very nasty stuff. And here's a biton military training that tries to explain why.Here's a bit more on the joys of Christianity and Islam bringing civilizationto Africa. This isn't to say that the tribal faiths were likely any morecivilized...It really is incredible that the patriot act goes so far. Here is anarticle on how the ACLU was forced to keep mum about some proceedingsrelating to terrorism because of secrecy provisions. It's disturbing thatthat's the law of this land, disturbing enough that I wish there were somethingI could do to act against such things in a less goody-two-shoes way thanacting to give BushJr (pretzels be unto him) the boot. Note that while thatlink is to slashdot, it's just a copy of the registration-required WashingtonPost article (best to avoid registration when possible).One of the most treasured gifts of civilization, the Library of Alexandriamay have been located recently.
Initially thought that it was odd to be calling for Rumsfeld to resign over theabuse of the prisoners -- how could he possibly have known about the tortures?Then, I read that he approves of at least some tortures. Theargument that the Geneva convention does not apply is, I think, completerubbish. One should always act as civilized as possible.