The Home of OMouse

Or, How I Waste my Time on the Internet

OMLife (blog)


I'm currently working on:

  • REDLisp - A Lisp interpreter written in C++.
  • CrissCross - A cross-platform library for threads, thread-safe file input/output and possibly network sockets. 

I've stopped working on the following programming projects for the time-being:

  • GNUFilter / KonSort - A file filter used to help organize your home directory. GNUFilter works just barely and I'm afraid of fooling around with the move and copy commands too much heh. KonSort is like GNUFilter except it's the Qt interface. It'd be nice if I got more of it working, but C++ is such a pain in the ass. Both of these will be re-written in Python or Common Lisp (if possible) or even REDLisp.
  • GNUSki - Based on the old game SkiFree where you ski around avoiding the yeti and rocks and trees, this game is in NCurses so that there's another good game aside from NetHack that works in a terminal window. Unfortunately I only got to a 0.2 version (GNUFilter got to 0.32 I think). Again, I'm going to re-write it in Python or Common Lisp (if possible).
  • And finally, xParse, my small and easy to use C++ xml parsing library. It took me forever to get it parsing well-formed xml files and it still has a few problems: it can't handle multi-line data and multiple tags in a line will definitely kill it. I'm going to work on it so that I can include it as a module for REDLisp.


Currently, REDLisp has some basic core lisp functions such as: first, rest, last, list, load, slice (subseq), +, -, /, *, mod, eq, >, >=, <, <=, and, or, xor, not. and assignments.

It'll be interestin to Lisp programmers to note that REDLisp doesn't even have cond programmed in but does have and, or, & xor. I'm used to programming in C++ and there might be a speed advantage though probably not. I'll test that once I code cond and then code those functions in REDLisp.

Anyway, very slow progress is being made and we're pretty much just another crappy little Common Lisp interpreter for now.