XProc 3.0 “last call”

Volume 3, Issue 46; 21 Dec 2019

The XProc editorial team has published a second last call draft of the language specification.

I covered most of the important details in the announcement message, but here’s a quick summary with some personal observations.

  1. The language specification is in good shape. The changes made since February are mostly simplifications and design changes that make pipelines easier to write. Several would be classified as “backwards incompatible”, and would require changes to an implementation, so we’ve published a new draft.
  2. The step specification is in good shape. The editorial team had hoped to get that to last call this year, but we haven’t quite made it. Implementation is having the desired effect, it’s telling us where the specification needs to be made more clear and explicit. I don’t think we’ve encountered any dramatic problems, though a bit more work is needed on a few steps.
  3. The implementations are in good shape. MorganaXProc-III is passing all of the test suite and I anticipate getting past 80% before the end of the holidays: there are only two or three steps that I haven’t implemented yet. I’m not prepared to say how long it will take to get all the bugs shaken out so I get to 100% as well, but I’ll keep chipping away.
  4. Achim and I plan to be interoperable at the API level so that it’s easy for users to switch between implementations. Putting some more thought into that is also on my holiday “to do” list. As is getting my implementation into some sort of distributable form so that you can start playing with it.
  5. Erik’s XProc 3.0 Programmer’s Reference seems to be in good shape, at least from my perspective. I’ll be doing a second review of that over the break too.

All in all, we got a lot done in 2019 and 2020 is shaping up to be a good year for XProc!