The Most Complete, Real-World Guide to Compiler Developmentand the Principles of Trustworthy Compilers Drawing on the author's over thirty years of expertise in compiler development, research, and instruction, Trustworthy Compilers introduces and analyzes the concept of trustworthy compilers and the principles of trustworthy compiler development, and provides analytical overview of other promising research works in this area. Vladimir Safonov shares the benefit of his long experience as a teacher and compiler development professional to explain thateven in such a well-studied area as compilersthere is still an opportunity for original results, efficient algorithms, and promising research and development. Beginning with a definition of the trustworthy compiler and a review of the history of compiler development, Trustworthy Compilers features: A complete overview of all essential compiler topics, including lexical analysis, parsing, semantic analysis, compiler optimization, code generation, and traditional and modern approaches to runtime Efficient, ready-to-apply algorithms for various phases of compilation, especially for semantic analysis, developed by the author and used in his real compilers High-yield coverage of graph compilersa novel compiler development areaplus related concepts such as graph grammars and graph compilers, and editor development tools such as DiaGen Real projectsusing examples of real compilersthat cover the key topics related to compiler development and compiling methods A survey of novel kinds of compilation, including just-in-time (JIT) and ahead-of-time (AOT) compilation, which are characteristic of modern software development platforms Java and .NET Sections on modern compiler toolssuch as ANTLR, CoCo/R, and SableCC Covering both classical techniques and innovative ones not covered by other books, Trustworthy Compilers helps both practicing professionals and students meet the challenge of?making compilers more trustworthy. The book's companion Web page (www.vladimirsafonov.org/trustworthycompilers) provides an overview of the book and related resources for compiler teachers and students.
{{comment.content}}