In The LaTeX Companion (Addison-Wesley 2004) Mittlebach & Gossens' dedicated section 7.11.4 to discussing output encodings: the mapping from
LICR, the internal representation of characters and symbols inside a LaTeX engine, to glyphs or combinations of glyphs available in a font file.
Since publication of the book a new generation of LaTeX engines,
luatex, have come to the foreground. Unlike the old engines, the new ones make it easy - thanks to the
fontspec package - to use any font installed on one's computer. Moreover, unlike the
fontenc package, which was described in The LaTeX Companion as the cornerstone of the output encoding mechanism,
fontspec requires no encoding (e.g.
T1) to be specified.
While the new engines, unlike the traditional ones, read UTF-8-encoded input files, which makes specifying an input encoding unnecessary, the internal representation of the input inside the engines hasn't changed, as far as I know, yet the number of available fonts has increased dramatically. So it would seem that the problem of specifying an output encoding would remain as relevant to the new engines as it was (and is) to the traditional ones.
How does the process of output encoding, of mapping
LICR to glyphs, work in the new engines?