Not long after starting my first Perl job, I decided that for each new project, I should try something new. A new module, a new construct, a new methodology, a new testing strategy, whatever. It hasn't always worked out, but much of what I've done has saved enough time that my employeer doesn't mind my few failed attempts.
I wanted to explore how Perl's closures can be manipulated, and ended up creating an object system by accident.
Note: All code is untested, unless otherwise stated