Chklat, a LaTeX checker
The program chklat attempts to give good error messages for nesting errors and other problems in LaTeX texts. It is fast enough to be applied before every call of latex or pdflatex, without noticeable loss of speed.
The LaTeX language is defined by an interpreter and a macroprocessor, which means that anything goes, and syntax checking is in principle Mission Impossible. However, hardly anybody constructs environment names on the fly or so, and most LaTeX files are fairly normal. Under those conditions much static checking is possible. Most importantly, this allows good error messages to be given, which can save much puzzling.
In particular, chklat works well in an emacs - chklat - pdflatex email@example.com
... and my name is not Richard ...