[Dev-luatex] A few newbie questions

Yue Wang yuleopen at gmail.com
Thu Jan 29 06:02:26 CET 2009

> later in 2009 we will have another formal release, which opens up a bit more
> (and the reason for openin gup via lua is that users will use lua for
> extensions and not so much start patching the core engine written in pascal
> or c)

Well, I think without a rough understanding of TeX's algorithms, and
various specifications (including PDF's and various Font's),
mere mortals cannot write the extension code in Lua. The situation in
LaTeX world can prove this. XeTeX's success lies in the fact that it
is simple and easy to use. Without much knowledge of font, one can use
its font mechanism just as other programs like InDesign. So it is easy
to write a higher level wrap up for LaTeX (like fontspec). However,
the situation for LuaTeX is different. LuaTeX's API is rather
complicated, and difficult to understand unless the users have a good
understanding of fonts and TeX's internals. Moreover, instead of using
ATS or ICU directly, the users should write the layout code themselves
which is a huge task. In order to write a fontspec equivalent for
LuaTeX, the macro writer should be familiar with
- layout algorithm (similar to the one used in ICU)
- font structure (especially fontforge API)
- lua language (well, he/she should read the Lua Programming Language at least)
- TeX language (well, he/she should finish reading the TeXBook several times)
- TeX internals (like token, node, font, catcode, hyphenation, line
breaking, font expansion, margin kerning, also noad, mlist if the font
package deal with math fonts)
That might be one of the reasons why there is no such LaTeX package
for LuaTeX. In ConTeXt world this is quite different, since Hans Hagen
is a Lua+TeX+fontforge+MetaPost+whatever expert. So unless there exist
several Hans Hagens in the LaTeX world, ordinary LaTeX users will not
benefit from LuaTeX development.

Yue Wang

More information about the dev-luatex mailing list