This is a repository of programs for diy roboticists. It involves interpreters, libraries, simulators, and other software bits that may or may not be useful to others.


Why use scheme? It is a rather small language. It has a minimal standard. It is not always the easiest language to work in, but it is based on the actor model. For this reason, I like it and stick with it, because it is perfect for message handling. I envision this as a very useful means of higher-level control of a low-level system.


Lua is also quite small. I use it in my simulator base.


Nachos is the not-so-tiny schemer. It is based on Tiny Scheme. It includes a library of C data structures, and types for scripting C with Tiny Scheme. You could say it is tiny scheme with alot of batteries included and the ability to connect C-types to it (this might be called 'smobs' by some). It has a net-repl, and you can script it remotely using Telnet. I use it as an alternative to Python and Perl. It does not support threads real well, only a gross hack. To support threads in scheme would require alot of brain-wracking to figure out how to modify the scheme. Or maybe not, I just do not see yet how it can be done easily.


I experiment with this. I found it to be very hard for me to understand, but a good learning experience. I use this in my simulators, using TCP/IP. I also use it for experimenting. I made an OS out of this. But I do not want to release this, I am afraid it will blow up someone's computer. It is not very hard to make it run on the metal. You will need a C library to emulate the Unix calls, and a few hacks to make it get keyboard and video. To do this, you must compile it with the library statically linked into it. This is an option that is not documented, and I only can get it to work in really old versions of the program. Newer versions don't seem to work. Do this by building the mini-target. But I find Scheme48 to be a bit too hard for me to understand as I am not a good Scheme programmer, just a slobbish C hacker.

I also ported this to DOS using DJGPP. If you want it I will make it available.


This is a small SDL/OpenGL based 2D simulator. It is used to simulate your robots, try things out, etc. It is a very small game-like engine only, it is portable to Windows and Linux. It uses Lua as a script language. It is not complete but I will post it up sometime soon.