Department of Computer Science News
Ryan Holeman Thesis DefensePosted Nov. 2, 2009
Department of Computer Science
Identifying Programming Idioms in C++ Generic Libraries
Date: Friday, November 13, 2009
Place: 276 MSB
Jonathan Maletic, Advisor
A system of programming idioms and design patterns existent in C++ generic libraries is presented to assist developers in understanding the complex syntax and composition in such libraries. To complement this, a fingerprint methodology for the automatic identification of these idioms and patterns is also presented. The specification of these idioms and patterns is derived from an empirical study of eight Boost generic libraries. A method for identifying these patterns and idioms though their unique fingerprints is conceived and implemented as a reverse engineering application. The fingerprinting method is then evaluated though a comparison of its results to the results of the empirical study. It is though this comparison process that the reverse engineering applications accuracy is validated. Once validated this system is then used to process and analyze large widely used generic libraries.