Archive for June, 2007

Tcl me pink…

June 15, 2007

I’ve been relearning Tcl for the past couple of days.  I forgot just how beautiful this simple language is.  It has arguably the simplest syntax of any programming language ever written, and it is that very simplicity from which Tcl derives so much of its power.  Having an extremely powerful and truly cross platform GUI library built in doesn’t hurt things either.  Admittedly Tk (Tcl’s GUI library) is a touch outdated looking on *nix systems, but it is fully native on Windows and Mac.  However, the next release of Tcl should fix some issues with Tk by including a skinning engine by default.  Tcl was write once run anywhere long before Java was even a twinkle in Sun’s eye.  It is a very mature programming language dating back to the late 1980s.  Anyway, it’s definitely a fun language to work with.

What the hell was I thinking…

June 10, 2007

I seriously wonder what the hell I was thinking going back to C++. The C++/SDL combo is only two steps higher than writing DOS games using C code with assembly language sprinkled in to do mode settings. You have to do pointer arithmetic just to put a pixel on the screen. SDL is a great base library to wrap around, but to code directly in it borders on insanity. I’m going to look at PyGame today instead. PyGame is a much higher level Python gaming library which uses SDL. Additionally, since Python is an interpreted language I do not have to worry about all of the hassle that comes with setting up a portable cross platform build system. For simple games, the loss of performance incurred by using Python should in fact be quite minimal. This is definitely a reasonable trade-off for the increased developer productivity that the Python language provides.

SDL

June 3, 2007

I’ve been playing recently with SDL, and I have decided after much thrashing about and trying different up-and-coming programming languages, that going back to C++ will probably be the most enjoyable. (What can I say, I’m sadistic as hell.) It’s going to be fun going back to controlling everything and having to put a little more “craftsmanship” into my software. Also, it doesn’t get much more portable than SDL and C++. For the most part, porting to a new platform should be as simple as modifying a couple of things here and there, running configure and then make. Probably the biggest advantage of compiled languages is that you don’t have to worry about what is already available on the user’s machine. C++ programs are self contained, just ship the binary, any dynamically linked libraries and the support files you need and you’re all set. I just wish I had some artistic talent when it comes to drawing. Oh well, the results should be comically interesting for my first couple of games at least.