Today's Bridge: Maybe we could have set their 1S. When I have to summarize the day's Bridge game with a sentence like that... weep for me, on the inside. (The kicker was that my heart suit was A-6-5-4-3-2. I'd have had to lead a low heart, trusting my partner to have the king, then take the ace precisely at his last heart. Doable, but tricky, and not even guaranteed to work if Paul has the jack.)
Today's Work: My codegens for Java seem to work just fine. I ended up making a "Callback" top level class to encapsulate the callback functions, and an auxiliary top-level class that stores a passed-in Callback object and uses its callback function as necessary. Most of the dangerous runtime exceptions will occur upon loading the program - I still use a few Class.getMethod and Method.invoke calls when writing messages, but the constraints on that function call should eliminate the possibility of hidden runtime errors. I suppose I could instanceof them away completely... but the code has to be fast first, and robust only where that won't break the speed. I'm already sacrificing a little bit of speed for ease of use, but I've tried to minimize it. Now to make a jar out of the giant mess of java files so we can actually use them.
Today's Gaming: So far, I just dabbled in Guitar Hero 3. I decided to go all Medium today, and strangely, I think that was a good decision. I passed all of the songs I tried, mostly with four stars. That includes my second try at Slow Ride, and I played the first second-tier song twice as well, since it was pretty short, and by the end, I had the rhythm pretty well down. The solos will still take some practice, but I don't think I'll need to resort to Practice Mode just yet. I'll keep playing and see what happens. By the time I get to Slash, I should be nailing songs on Easy, no problem. Speaking of Tom Morello, it took me many tries, but I finally figured out the secret: the only part that matters is the very end of the song, at which point, if you haven't beaten him outright, it's a guaranteed loss. I saved up Double Notes and Difficulty Up and gave him double notes on Hard at the outro... nearly instant death. I had an Amp Overload as well to make it REALLY hurt, but I accidentally nailed the last set of star notes and got another Difficulty Up. Oops. Damn my sudden burst of luckskill. Maybe some Warrior Within for a bit... I'm up to the part where I took that really long break last time due to frustration, I've got five Life Upgrades and one more on the way, and I've been tearing enemies apart even without a sword.
Maybe my melancholy is also partly due to drinking Sierra Mist instead of Caffeine-Free Pepsi today. I hate when Wall Market doesn't stock the drinks I want.