1 \environment luatex-style
2 \environment luatex-logos
4 \startcomponent luatex-introduction
6 \startchapter[title=Introduction
]
8 This book will eventually become the reference manual of
\LUATEX. At the moment,
9 it simply reports the behavior of the executable matching the snapshot or beta
10 release date in the title page. We don't claim it is complete and we assume that
11 the reader knows about
\TEX\ as described in
\quotation {The
\TEX\ Book
}, the
12 \quotation {\ETEX\ manual
}, the
\quotation {\PDFTEX\ manual
}, etc. Additional
13 reference material is published in journals of user groups and
\CONTEXT\ related
16 Features may come and go. The current version of
\LUATEX\ can be used for
17 production (in fact it is used in production by the authors) but users cannot
18 depend on complete stability, nor on functionality staying the same. This means
19 that when you update your binary, you also need to check if something fundamental
20 has changed. Normally this is communicated in articles or messages to a mailing
21 list. We're still not at version
1 but when we reach that state the interface
22 will be stable. Of course we then can decide to move towards version
2 with
25 This means that occasionally you can encounter functionality not described here.
26 Just consider that experimental then. They are either a playground or are being
27 tested in real situations first before being finalized. And we can equally well
28 kick them out again. When they stay we will descibe them in the manual or more
29 extensively in articles.
31 Don't expect
\LUATEX\ to behave the same as
\PDFTEX ! Although the core
32 functionality of that
8 bit engine is present,
\LUATEX\ can behave different due
33 to its wide (
32 bit) characters, many registers and large memory support. There
34 is native
\UTF\ input, support for large (more that
8 bit) fonts, and the math
35 machinery is tuned for
\OPENTYPE\ math. Ther ei ssupport for directional
36 typesetting too. The log output can differ from other engines and will likely
37 differ more as we move forward. When you run plain
\TEX\ for sure
\LUATEX\ runs
38 slower than
\PDFTEX\ but when you run for instance
\CONTEXT\ it might be faster. But
39 in any case:
32 bit all||over combined with more features has a price.
41 \LUATEX\ consists of a number of interrelated but (still) distinguishable parts.
42 The organization of the source code is adapted so that it cna glue all these
43 components together. We continue cleaning up side effects of the accumulated
44 code in
\TEX\ engines (especially code that is not needed any longer).
48 Most of
\PDFTEX\ version
1.40.9, converted to C (with patches from later
49 releases). Some experimental features have been removed and some utility
50 macros are not inherited as their functionality can be done in
\LUA. We
51 still use the
\type {\pdf*
} primitive namespace.
54 The direction model and some other bits from
\ALEPH\ RC4 (derived from
55 \OMEGA) is included. The related primitives are part of core
\LUATEX.
58 We currently use
\LUA\
5.2.*. At some point we might decide to move to
59 5.3.* but that is yet to be decided.
62 There are few
\LUA\ libraries that we consider part of the core
\LUA\
66 There are additional
\LUA\ libraries that interface to the internals of
70 There are various
\TEX\ extensions but only those that cannot be done
71 using the
\LUA\ interfaces.
74 The fontloader uses parts of
\FONTFORGE\
2008.11.17 combined with
75 additionaL code specific for usage in a
\TEX\ engine.
78 the
\METAPOST\ library
82 Neither
\ALEPH's I/O translation processes, nor tcx files, nor
\ENCTEX\ can be
83 used, these encoding|-|related functions are superseded by a
\LUA|-|based
84 solution (reader callbacks). Most of the
\PDFTEX\ backend is available but via a
85 bit different interface.
87 The yearly
\TEXLIVE\ version is the stable version, any version between them is
88 considered beta. Keep in mind that new (or changed) features also need to be
89 reflected in the macro package that you use.
94 \NC \LUATEX \EQ Version
\number\luatexversion.
\luatexrevision \NC \NR
95 \NC \CONTEXT \EQ \contextversion \NC \NR
96 \NC timestamp
\EQ \currentdate \NC \NR