[Tex/LaTex] need Lua or LaTeX3 in a plain old technical document

latex3luatex

I wrote and maintain a couple hundred page computer related technical spec in XeLaTeX. I use tables, figures, bitfields, algorithms and other typical trappings. I'm intrigued by LuaTeX and LaTeX3, but honestly, I don't know what benefit these will bring to a document like mine. Am I going to do more with less? Replace inelegant documentation strategies? Does anyone have examples of LaTeX3 benefits to a plain-Jane technical document?

I already know and respect Lua from past programming work. It's the day-to-day applicability to documentation that I'm missing.

Best Answer

Developments in Lua and LaTeX3 are separate, but there is some convergence in the sense that both address issues for LaTeX programmers. It's also the case that the benefits you will see from these developments depend on the nature of your documents.

LuaTeX adds to TeX functionality which is not available any other way, but also makes general programming a lot easier. The general programming stuff helps package authors. For example, Lua is used by fontspec when loaded in LuaLaTeX to find fonts system. Some of the new abilities show up in particular areas, where TeX 'runs out of steam'. One that stands out is in Arabic typesetting, which is very context-dependent and which TeX does not do so well at. LuaTeX-based approaches can address this type of issue.

LaTeX3 developments are also focussed at the programming end the moment making it easier to maintain packages. For example, XeLaTeX users tend to use fontspec, and fontspec is written in the LaTeX3 programming system. In the longer term, the aim is to address a number of underlying issues with LaTeX in an eventual LaTeX3 format. This should wrap up a lot of package functionality kernel, and also allow us to address some long-standing awkward issues (for example, that adding vertical space can have odd effects due to the way TeX handles the main vertical list). A richer set of kernel tools should also cut down on multiple-package compatibilities. Now, it's possible that this will have very little impact on your documents, other than perhaps giving you shorter preambles.