Programming Languages

Our programming languages faculty are widely recognized as world leaders in the theoretical foundations, practical implementation, and application of programming languages. Our research is concerned with a comprehensive science of programming that encompasses not only language design and implementation as ordinarily conceived, but also specification, verification, implementation, evaluation, and validation of programs. We believe that programming is fundamentally an explanatory activity, which requires that a program be codified in a form that not only supports execution on a computer, but also manifests its design so that they can be understood by developers and maintainers, and subjected to mechanical verification and validation. Our work comprises a broad spectrum of research, ranging from abstract theories of programming concepts to large-scale implementations of these ideas in working software systems. It is precisely this broad scope of investigation that distinguishes us from our competitors. Over the last two decades we have repeatedly demonstrated that fundamental theory is essential for building robust and reliable systems, and that enduring and elegant theories arise from meeting the demands of building such systems.

Our success in advancing an integrated view of Computer Science encourages us to take on even greater challenges, and opens up many new possibilities for us to explore. We envision that future languages will have fully formal definitions with fully checked proofs of their safety and security properties as a matter of course.

Related Sites:

Principles of Programming Group (PoP)
The goal of the PoP group is to understand, develop, and demonstrate the principles, processes, and supporting technologies for the construction of computing systems. For additional information on the PoP group, see their website.

Faculty working in this area:

Lastsort descending First Title Email
Acar Umut Associate Professor
Aldrich Jonathan Director, Software Engineering Ph.D. Program; Professor
Blelloch Guy Professor, Assoc. Dean for Undergraduate Programs
Blum Lenore Distinguished Career Professor of CS
Brookes Stephen Professor
Brumley David Professor, ECE; Associate Professor, CSD
Bryant Randy University Professor
Clarke Edmund University Professor, Emeritus
Crary Karl Associate Professor
Datta Anupam Associate Professor, CSD, ECE
Fredrikson Matthew Assistant Professor
Garlan David Associate Dean for Masters Programs; Professor
Goldstein Seth Associate Professor
Harper Robert Professor
Hoffmann Jan Assistant Professor
Lucia Brandon Assistant Professor
Parno Bryan Associate Professor
Pfenning Frank Department Head; Joseph F. Traub Professor of Computer Science
Platzer André Associate Professor
Schmerl Bradley Principal Systems Scientist
Shaw Mary A. J. Perlis University Professor
Simmons Reid Research Professor
Wing Jeannette Consulting Professor
Yang Jean Assistant Professor
Subscribe to Programming Languages