Seminars & Colloquia

Yannis Smaragdakis

University of Massachusetts, Amherst

"Software Challenges: Analysis and Modularity"

Monday February 16, 2009 02:30 PM
Location: 3211, EB2 NCSU Centennial Campus
(Visitor parking instructions)


Abstract: Correct and efficient software development is a core concern of Computer Science, spanning the sub-disciplines of programming languages and software engineering. In this talk, I will review two topics that hold promise for addressing software challenges: Software analysis by combining static and dynamic techniques, and modular software construction through a new kind of program abstraction.

Specifically, I will first discuss my recent research on bug finding and program understanding tools, including DSD-Crasher and DySy. These tools are distinguished by their powerful combinations of static and dynamic analyses. The combination results in significant advantages, e.g., in reducing the rate of false reports during bug detection.

I will then present a vision for the next step in the evolution of high-level programming languages, centered around the idea of 'structural abstraction': abstraction over the structure of other program elements. An example in this space is the mechanism of 'class morphing', supported by the MorphJ extension to Java, which I will motivate and introduce. Class morphing yields substantial simplicity advantages in real software development tasks. The challenge is to provide such functionality as a high-level language feature, with strong safety guarantees.

Short Bio: Yannis Smaragdakis is an Associate Professor at the University of Massachusetts, Amherst. His interests are in the areas of applied programming languages and software engineering. He got his B.S. degree from the University of Crete (Greece) and his Ph.D. from the University of Texas at Austin. He is a recipient of an NSF Career award, and 'best paper' awards at ASE'07, ISSTA'06, GPCE'04, and USENIX'99. Yannis has authored numerous publications, and claims that 'some are even good'.

More information on his work can be found at:

Host: Tao Xie, Computer Science

Back to Seminar Listings
Back to Colloquia Home Page