For the past few months I've been putting some work into writing bindings
of Allegro 5 to Chicken Scheme.
What is Chicken Scheme? Well, it's a Scheme written with low-level
development in mind, used by folks in various industries to get an
assortment of real-world work done.
What makes it interesting for game development is its ability to bind
nicely with C and C++ applications, while maintaining both a solid
optimizing compiler and a shwanky REPL (install the parley egg if you use
For instance, with the Allegro Egg I can have my game running while I'm
editing the same code that is presently executing; because the code is in
Emacs, the REPL is tied to an inferior scheme session, and the REPL itself
is part of Chicken Scheme and thus part of my application. At the stroke of
a key I can fundamentally alter the behaviour of the game with nary a
second lost to recompilation.
What about speed? While being interpreted its nothing to write home about,
but the latest 4.7 branch has a fairly fantastic optimizing compiler; and,
if that's not sufficient, recall that Chicken Scheme is designed
to inter-operate seamlessly with C. Rewrite your inner loops in C, if need
be, and continue writing the remainder of your game in something a little
Anyhow, without further blathering on, the Wiki page for the Egg is here:
And the GitHub repo is here: https://github.com/dleslie/allegro-egg
It should be propped to the chicken depots sometime soon...