On 21/03/2011, at 12:57 AM, Joseph Wright <[log in to unmask]> wrote:
> Impressive that you've got this far, but a quick look at the code does
> flag up a potential danger from this approach. You're pretty much tied
> to what seemed like a good idea at the time in terms of
> _implementation_, not just in terms of interface. The later is pretty
> good, I think we all agree, but I'm not sure I would choose anything
> like the same implementation. Perhaps we first need a LaTeX3 translation
> of the current code as you say, in order to see where to go.
Right, my only goal so far is a relatively straightforward translation. Since we already have a well-tested codebase and an interface to remain compatible with, this seemed the best way to start. (I'm much more of the philosophy of evolving from the inside out; I very rarely like to rewrite code from scratch.)
There are some aspects of the implementation that have had somewhat of an impedance mismatch with expl3 (e.g., delimited data inside a sequence is probably better put inside a property list) but on the whole it's worked well.
Once the implementation is working (there are some headaches to think about when replacing the NFSS) and we've got some nice test files working then we'll be in a better state to start ripping the guts out if necessary. Consolidating the implementation and shaking out the cobwebs should give us a good indication of what is still working well and what would be better replaced nowadays by an alternate approach.