Department of Computer Science News
Ryan Holeman Thesis Defense
Posted Nov. 2, 2009Department of Computer Science
Thesis Defense
Ryan Holeman
Identifying Programming Idioms in C++ Generic Libraries
Date: Friday, November 13, 2009
Time: 3:00
Place: 276 MSB
Committee Members:
Jonathan Maletic, Advisor
Mikhail Nesterenko
Ruoming Jin
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.