Sunday, October 13
There are a number of reasons for this. Firstly, on the personal level the current day gig is heavyweight C++, and Common Lisp is a pleasant counterpoint to the tyranny of the Compile-Link-Edit cycle.
Secondly, the Lisp Commons has improved immensely over the last few years, thanks mainly Zach Beane and his efforts with Quicklisp.
Thirdly, the indie games scene has changed out of all recognition since the time I was trying to boot something; should I get to the point where I have something viable a pleotrha of funding options exist where there were none before. As a corollary with the third point, the nature of what I'm competing with has changed - I'm no longer competing against AAA developers with deep pockets, but people with a Unity3D liscence and more artistic talent than I can ever hope to have.
Most importantly, on the fifth hand ( we are counting on Lisp Alien hands ), I still have the deep suspicion that games development with Lisp looks deeply unlike anything with C++. I recally in the early days of my education as a Lisp neophyte that I was impressed with the GRT raytracer I was surprised to find that it was an abandoned project. I was even more surprised when I spoke to the author and he told me the reason for abandonment was that it "wasn't lispy enough.". This flipped a few relays on the cerebral switchboard: if a conventional raytracer architecture isn't "lispy enough", what of conventional game engine architecture? I'm not at all sure, but an extended bout of exploratory programming might be in order. So, onwards...
Wednesday, January 2
I am really enjoying using Jonathan Rockway's Eproject for Emacs. It's project management done in a minimalistic way that lends itself to many useful elisp hacks. As well as the scons/flymake project definition that I use, there's also a nifty hack that allows header/source file definition switching that I just cooked up.
It's only a few lines long but already useful. It's simple because eproject will simply list all the files in the current project for you, then you can pick out the duplicate...