I've been sleepy all day. Maybe I shouldn't have stayed up until 4:00 AM last night to write my last post? Heh heh.
Also, I should have mentioned this yesterday: I did go on to rewrite my little exercise in Haskell. The exercise takes an image, messes with it, saves it to a file, draws it on the screen thirty times over the course of fifteen seconds, and exits. You can look at my C++ source code and Haskell source code. They're almost exactly the same. Both consist of a quick wrapper around the SDL_Surface manipulation and a list of SDL commands to execute. Neither does much error checking. The Haskell one has significantly fewer lines, but they're about the same in file size. When I ran them, I used my avatar image from this site as the image to mess with. It looked pretty cool.
I was a little surprised at how easily I could write the Haskell code, although maybe I shouldn't have been so surprised, since I've been studying it for a while (not to mention that I'm a very fast learner). Since I love Haskell so much, I'm probably going to stick to it.
Sometime when I'm not so tired, I'm going to write a programming-101 post about C++, Haskell, and why Haskell is so much more awesome. When I say “programming 101”, I mean that I hope it will be accessible to people who don't do computer programming – but as with my posts about gender, I believe that introducing basic concepts before expanding on them is also the most effective way to communicate even with people who are already feminists / computer programmers. It makes what I'm saying be more grounded, more clear, and more precise.
Oh, and also – I have shipping information on my tablet now. The best estimate is that it will arrive June 21, which gives me an entire week to get used to Haskell programming. I think I'm going to try to port my 2D collision-detection library from C++ to Haskell. Or maybe write a cute Haskell/OpenGL game. Or both. Watch me.