LaTeX3 Programming Conventions
The files of the
l3kernel bundle provide a low-level API for TeX programmers
with special syntax conventions, completely separating it from document level
syntax. Hence, the commands provided are not intended for use at the document
level nor for use in describing design layouts in document class files.
This API provides the foundation on which the LaTeX3 kernel and other advanced extensions are built. Special care has been taken so that they can be used within a LaTeX2e context as regular packages.
l3kernel is still experimental, the bundle is now regarded as broadly
stable. The syntax conventions and functions provided are now ready for wider
use. There may still be changes to some functions, but these will be minor when
compared to the scope of
Programmers making use of
l3kernel are strongly encouraged to subscribe to
the LaTeX-L mailing list (see below): announcements concerning the deprecation
or modification of functions are made on the list.
l3kernel bundle requires the e-TeX extensions and the functionality
\pdfstrcmp primitive. As a result, the bundle will only work
with the following engines:
- pdfTeX v1.30 or later
- XeTeX v0.9994 or later
- LuaTeX v0.40 or later
pdfTeX v1.30 was released in 2005, and so any recent TeX distribution
l3kernel. Both XeTeX and LuaTeX have developed more
actively over the past few years, and for this reason only recent
releases of these engines are supported.
Discussion concerning the approach, suggestions for improvements, changes, additions, etc. should be addressed to the list LaTeX-L.
You can subscribe to this list by sending mail to
with the body containing
The issue tracker for LaTeX3 bugs is currently located at
Please report specific issues with LaTeX3 code there. More general discussion should be directed to the LaTeX-L lists.
The LaTeX3 Project
Development of LaTeX3 is carried out by The LaTeX3 Project. Currently, the team members are
- Johannes Braams
- David Carlisle
- Robin Fairbairns
- Bruno Le Floch
- Thomas Lotze
- Frank Mittelbach
- Will Robertson
- Chris Rowley
- Rainer Schöpf
- Joseph Wright
Former members of The LaTeX3 Project team were
- Michael Downes
- Denys Duchier
- Morten Høgholm
- Alan Jeffrey
- Martin Schröder
Copyright (C) 1998-2012 The LaTeX3 Project All rights reserved