Thoughts about Erlang and game programming

Had a very easy Erlang exam this day and started to wonder whether Erlang could make a decent language for programming games. From a C/C++ programmer's point of view I'd say no. From someone who already created and designed systems similar to Erlang in functionalities, I'd say yes. The main concerns of game programming in Erlang would to have global objects accessible in no time. Doesn't work with Erlang, there are no global variables. But, and that's the main point, most game have per-frame calculation that can be split up into several threads or processes, which means that one can manage large objects/structures/whatever in a way that you only send/request data from running threads - these keep their objects alive and will also do their changes on them. We want to iterate through game objects and do changes to the level and renderer? Just send a few message with the changes if needed. Even if there's no logic connected to a process, it can still be used as some sort of data manager that does it's stuff in the background. It enables event-based and waiting-based processing as wel as polling. I have to say that this way superior and I wouldn't wonder if it'd be possible to write complete, big and complex games in Erlang utilizing this approach. Maybe one day. Erlang has a real lot of awesome features, though I'd add a few more things like not always generating iteration values or just some for sheer access speed and array processing in general.

That said, I'm feeling better to know that there is a language that is not C, offers great comfort for a lot of things, solves programming more elegant than other non-prodecural languages and could also work for video game programming. Makes me somehow feel good. I don't event know why, I'm not even using it right now except to get marks.

No comments: