Refactoring makes my brain hurt.
So as threatened, I implemented generic types last weekend. Took about a solid afternoon to make it happen, so not bad at all.
In the process, I realized that there's just a ton of code in the Epoch compiler in particular that's... gross. So I took a few days and cleaned it up substantially. As a bonus, adding namespaces to the language should be pretty smooth now, once I get around to it.
There's still a lot of cleanup left to do, and even more documentation; the code is in a sorry state these days due to a combination of neglect and churn... which, now that I say it out loud, is a weird combination.
Anyways, bottom line is that I need to spend a healthy chunk of time just going through the entire code base and making it sleek. Apparently people actually download the code on occasion, so it's worth making sure that the quality reflects on my actual programming habits and not my quick-and-dirty prototyping habits :-D
I'll probably split the next few weeks between minor cleanup tasks and implementing generic (i.e. templatized) code generation. That's going to be a nightmare.