Yue Wang wrote:
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
well, but even then it's just a (few) macro writer(s) and not all users; also keep in mind that in 30 years of tex, fonts have never been easy, always demanded some expertise, etc and there was always a small group (per macro package) that dealt with it also, we are aware of xetex being easier to use out-of-the-box with respect to fonts, which is great; we definitely do not advocate users to use luatex instead of xetex, they should use what fits best and it might be that 90% of the users is better of with xetex
- layout algorithm (similar to the one used in ICU)
well, use xetex then; there will be no hard codes layout extensions; for instance, as part of the oriental tex project an alternative line break routine is written (a subproject by idris, taco and me) and that's all done in lua
- font structure (especially fontforge API)
sure, but in any case one should be familiar with what a font is; this is normally not something that an average user will deal with (and once a macro package supports something, it's even more hidden and stays forever)
- lua language (well, he/she should read the Lua Programming Language at least)
that's not too much work as we've chosen a language which is relatively easy to learn and is not burdened by tons of libraries that you need to keep up with (apart from installation mess that would result from that)
- TeX language (well, he/she should finish reading the TeXBook several times)
it depens on what one does
- 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.
well, eventually it will happen i guess; just look at it from the other end ... when i started writing context i didn't have a clue what tex was doing, and i simply didn't understand enough of tex to see what happened in latex code (we're talking 1992 or so); eventually context catched up quite well; this time context happens to be a bit ahead with respect to luatex btw, in pdftex similar things happened ... context has been using some features of pdftex before latex did simply because i was involved in the development, such is live Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------