I always thought the problem description was a little screwy (I never really understood the need for some the the requirements)


We kind of never agreed on the scope.

And the OO code compared very favorably with the procedural version (e.g. comparable code sizes (no bloat), polymorphism without taxinomy).


If I remember correctly, you implemented a different set of features than mine, so that we really couldn't compare code-to-code for many parts, but rather focused on the architecture issues.