Programming


About these projects:

These are some examples of things I have written. The are primarily old university assignments and open source software I have written for various other purposes.

pyparse

This is a lexer for Python. I wrote this because I felt none of the available lexers fit in very well with python. Some abused the language by doing things like using docstrings for expressions, some had performance issues, and some required the developer to run a file through a utility to produce the actual Python script. I felt it could be done better, and this is the result.

It improves performance by automatically merging regular expressions (as function call overhead is substantial in Python), and there is a simple, Python-friendly interface to building the lexer that doesn't require the file to be converted to Python.

This is BSD licensed (2 clause).

single file

Logo2Python Translator

This program translates a Logo script into a Python script that uses the turtle module to draw. It's written in C, using a separate process for the scanner and a recursive descent parser. The resulting Python script requires Tk support.

open dir | .tar.gz | .zip

Java Asynchronous Communications

This package handles serialization of objects and asynchronous transmission/reception of messages. I originally wrote this for a Distributed Systems assignment, but it has proven useful in a number of other projects.

open dir | .tar.gz | .zip

Shuffle

This is a simple program to reorder lines of input. It uses a the system's high quality random source to seed the random number generator.

This is BSD licensed (2 clause).

open dir | .tar.gz | .zip




Copyright © 2007 Anthony Roberts.

simply w+b
Linode