Seminars & Colloquia
Georgia Tech, College of Computing
"Java Generics Adoption: How New Features are Introduced, Championed, or Ignored"
Friday May 13, 2011 10:00 AM
Location: 3211, EB2 NCSU Centennial Campus
(Visitor parking instructions)
For over 10 years, language designers mulled and battled over the decision to support generics for Java, before finally supporting it officially in 2004. The advocates claimed it would solve many issues with type safety, as well as helping reduce casts, code duplication, and promoting generic operations and classes. The critics claimed that the proposal added many complex features with little payoff or did not go far enough in addressing underlying problems. To this date, there has been no empirical evidence to measure the successful adoption of generics. In this talk, we describe the results of a study examining the entire lifetime of 20 open-source Java projects and the analysis of over a half-billion lines of code to see to what extent that those projects and developers embraced or ignored the use of Java generics. Further, we look at whether some of the claims advocates had originally put forth are actually hold true. The goal is not to show who was right or wrong, but to understand how does a community embrace or ignore new language features, and understand some of the factors and barriers that language and tool designers should consider when designing and releasing new features.
Chris Parnin is a PhD student at the Georgia Institute of Technology. His research interests includes psychology of programming and empirical software engineering.
Host: Emerson Murphy-Hill, Computer Science, NCSU