Rome is in a state of emergency, the Senate and the Guard are embroiled in fierce arguments, the people are divided. Many roads lead to Rome, whether you decide to use powerful cards such as the Tower and the Praetorian Guard to protect the power and victory points you have, or instead prefer to use the Consul and the Tribune to skilfully pull the strings behind the scenes. Whoever succeeds in using their connections and manages to play their cards cleverly will at the end deserve their victor's laurels.
Implementation of the board game Roma for a class I tutored. Mostly so I knew my OOP hints would work, and to get them off my back about the workload.
Experimental support for nice things in C. Currently: generic/templated datatypes (via #define trickery) and in-memory FILE* streams a la stringstream from C++ (a thin wrapper around fmemopen).
A bike courier in the city wants to know the optimal delivery order.
Another assignment for another class I was tutoring; this time we needed solutions for automarking. We could have solved the problems by hand, but what sort of example would that send?
Naturally the main focus wasn't the implementation, it was in developing a responsive heuristic.
Assignment: write a 3D driving simulator
This time I was a student. Don't mind the horrible graphics—that's how it's supposed to look!
My honours project. Golog is an experimental cognitive robotics language mixing declarative and procedural styles with "non-deterministic" operators.
All versions (at the time) were implemented as meta-interpreters in Prolog. This impacted their speed and made the programs hard to read/write/debug.
I wrote a compiler for a nicer, Java-like syntax. This produces bytecode for the JVM (via Jasmin).
Naturally the presence of "non-determinism" requires the abuse of Java's exception-handling mechanism (educational!).
About 24k lines, including tests + thesis.
In this game of Gothic adventure, one player takes the role of Dracula while up to four others attempt to stop him by controlling Vampire hunters from the famous Bram Stoker novel. Dracula has returned, and is determined to control all of Europe by creating an undead empire of Vampires.
Dracula uses a deck of location cards to secretly travel through Europe, leaving a trail of encounters and events for the hunters that chase him.
Meanwhile, the hunters attempt to track and destroy Dracula using the limited information available to them - a task easier said than done when their prey has the power to change forms into a wolf or bat, and can even melt away into the mist when confronted.
To save Europe and rid the world of Dracula's foul plague, the hunters must destroy Dracula before he earns enough victory points to win the game... will they have enough wit and bravery to defeat the dark count?
in progress ...