Announcing "XeTeX: A Pseudoprogram" #952
pkgw
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi folks,
I'm thrilled to announce the release of the first version of XeTeX: A Pseudoprogram, a digital book describing the inner workings of the XeTeX engine upon which Tectonic is based. It is a web application analogous to the 624-page printed book Computers & Typesetting, Volume B — TeX: The Program, which completely specifies the canonical TeX82 program implementation, listing both the complete source code and comprehensive explanations of virtually every routine.
XeTeX: A Pseudoprogram is derived from the WEB source code used to generate the XeTeX distributed through the TeX Live system. That source code is in turn a patched version of the canonical
tex.web
file. As such, the vast majority of the book's content is the work of Donald E. Knuth — but anything imperfect about it is our responsibility, not his.The book is generated by Tectonic via a new tool, tt-weave, that acts like a traditional
weave
tool by translating the WEB source into a TeX file that can then be compiled. However, tt-weave targets Tectonic's HTML output mode, and it contains a parser and pretty-printer for the WEB language that translates it into a C/Rust-like pseudocode syntax that I personally find much easier to read than the typesetting used in TeX: The Program. Hence the book's title.For more information about the provenance of the book and how the digital book is created, see the preamble of XeTeX: A Pseudoprogram. As a smaller test case, the tt-weave system also supports and publishes its own version of The WEAVE Processor, which is the analogous book explaining the classical WEAVE program upon which tt-weave itself is based.
If you're interested in the production of the book and might like to play around with the tooling yourself, I've seeded the tt-weave issue tracker with some known problems that would be nice to address.
As ever, I'd like to offer my immense gratitude to everyone who wrote the code and documentation that are republished in XeTeX: A Pseudoprogram. While this book cannot serve as the canonical definition of the program in the same way that TeX: The Program specifies TeX, I hope that it will be able to increase the impact and reach of XeTeX by serving as a modern, foundational reference for investigations and discussions of how this important program actually works.
Beta Was this translation helpful? Give feedback.
All reactions