So, obviously I’m not much of a blogger, but it’s late at night and I figured I’d spend some insomnia updating with what I’ve been thinking about lately. WildStar is in closed beta, and the community is pretty awesome so far. Just look at this music video a fan made! The game’s not even released yet, and it’s nice to see people pumped for it. It’s going to be awesome.
A few years ago (wow, has it really been 5 years?) I posted a blog entry about rediscovering C++ to enable my game industry ambitions. Well, now I’ve actually been programming in C++ in the game industry for a few years…and I’m no closer to loving it now than I was then. I understand it better, but the frustrating bits are just as frustrating, or even more so. C++11 solves some of my concerns, but not all of them, and in general the language still feels like a bolted-together mishmash of features, hobbled by a slavish backwards-compatibility with C that makes certain improvements simply impossible. Stroustrup et al’s paper on static if further indicates to me that the standards committee has different goals and values than I do.
Part of my free time has been spent fantasizing about someday switching to a “better” systems language. There certainly is no shortage of them available, but the chief contenders seem to be D, Go, and Rust, with the possible addition of Nimrod. Of course, they all have different design goals, so comparing them directly is difficult, but I’d say that I’d be happy with any of them over C++ for most of my needs. I’m considering writing a series of posts about each and their applicability to game dev.
Of course, I don’t expect to be able to use any of these new languages at a major studio any time soon; Rust and Nimrod don’t even have a 1.0 release yet, after all. But D has already seen some use at Remedy, and John Carmack’s recent QuakeCon keynote in which he waxes philosophical about functional programming gives me hope. Someday…