The IPR, short for Internal Program Representation, is an open source project originally developed as the core data structures of a framework for semantics-based analysis and transformation of C++ programs. The foundations of the IPR were laid down and implemented between 2004 and 2005, as part of The Pivot research project. An overview, the general philosophy, and the design principles behind the IPR are presented in the paper "A Principled, Complete, and Efficient Representation of C++"
.That paper is a useful source of general information about the IPR and non-obvious challenges in representing C++ programs in their most general forms.
For more information, bug reports, and suggestions, please visit
https://github.com/GabrielDosReis/ipr
Gabriel Dos Reis, Bjarne Stroustrup.