Muller's World

Mike Muller's Homepage
NewsSoftwareMusicAbout Me

Software Projects

Wurld 3D Gaming Engine

Wurld is a scriptable, OpenGL based engine for games and 3D graphics.

DOPY - Distributed Objects for Python

DOPY is a small, non-CORBA distributed object system for Python.

PyESD - Python EsounD Wrapper

PyESD is mainly just a SWIGged wrapper around the Enlightenment Sound Daemon client library, allowing those of us who use EsounD to manipulate the server from python code.

The grunt preprocessor V0.13

Grunt is a powerful preprocessor along the lines of m4, only with more special symbols and the ability to deal with tables. It was designed for generating code with lots of common structures.

At this time, grunt compiles on Linux under egcs with libstdc++ under versions greater than 2.8.1. It should be possible to get it to compile against the 2.7.2 libraries (with minor changes: use -frtti in the compiler flags and remove the typeinfo file from the gnulib directory). Mileage may vary under other UNIXs.

grunt will also compile under OS/2 with Visual Age. It should be fairly easy to get it to compile under EMX (it was written under EMX).

At this time, I'm not planning to perform any further enhancements to grunt, but I'll gladly try to answer questions and fix bugs.

The Spug Libraries for Python V0.15

The spug library is a set of python modules for lots of different things (Tkinter meta-widgets, NML parsing and rendering, command line processing, date processing, etc.). Recent additions include a communications Reactor/Proactor framwork and a revamped web framework.

The Spug Library for C++

A C++ library containing code for reference counted pointers, sockets, byte buffers, run-time type manipulation and whatever else I end up sharing between C++ projects.

The SpugAudio Library for Python

SpugAudio is an abstraction layer around other sound systems (currently alsa and esound). It's very simple. It currently supports record and playback and provides file handles and event masks for use with the select and poll functions.

The SpugEdit Programmer's Editor

SpugEdit is a programmer's editor written entirely in Python using the Tkinter widget set. It has been my primary editor since late in 2007.

spugmail 0.1

Spugmail is a curses based mailer written entirely in Python. I wrote it because I wanted a mailer that was extensible in Python and could be run over a text terminal.

This is pretty much a beta release, mostly due to lack of documentation and automatic install scripts.


spugnews is a GPL'd usenet binary grabber. It has a simple command-line interface and the ability to perform rudimentary subject line analysis to group together articles that are part of the same file set.


spugspam is a confirm-response spam blocking system. It is intended for the power user, so be prepared to spend some quality time with your system...

Javascript Instrospection

A module that provides advanced namespace and class features to Javascript - see the article describing it.


ODB is a simple, pure python object database system.


Crack is a scripting language with syntax similar to C/C++/Java that compiles directly to machine code via LLVM.

What the @#%$ is a Spug?


Linux on the IBM Thinkpad R52

Javascript Problems and Solutions

MRTG Setup on Debian