Engineering a Compiler. A good and famous book written by Keith Cooper for engineers. It includes principle for Compiler and more focused on engineering sides.
This manual describes omniidl, the omniORB IDL Compiler. It is intended for developers
who wish to write their own IDL Compiler back-ends, or to modify existing
ones. It also documents the design of the Compiler front-end for those poor souls
who have to track the IDL specification.