Programming Languages and Compilers

Programmers use programming languages to express the computations they want their software to perform, and compilers to translate the resulting programs to a form that can be executed on hardware.  Research in this area focuses on language and implementation issues: how language constructs influence the way in which computations are performed; how to reason about the behavior of programs; how to translate programs efficiently and effectively into low-level code; and how to improve the performance of code, e.g., with respect to size, speed, resource usage, and/or security.

Research on programming languages and compilers at the University of Arizona focuses on practical issues.  It spans a number of different topic areas and encompasses program analyses and transformations related to software security [Collberg], static and dynamic analysis for deobfuscation and code optimization [Debray], novel compilation techniques for new and interesting languages [Proebsting], and application of code generation technologies and static and dynamic program analyses to scientific computing applications [Strout].  Ongoing research projects in this area include code obfuscation using covert channels [Collberg and Debray], generic approaches to deobfuscation [Debray], and language-agnostic optimization and parallelization of interpreted code [Strout and Debray].

Programming Languages and Compilers Faculty

Christian Collberg

Interim Department Head and Professor Office: GS 758 Research Interests: Programming languages, compilers, intellectual property protection of software, domain-specific search engines. (Ph.D., University of Lund, 1992)

Saumya Debray

Interim Associate Department Head and Professor Office: GS 735 Research Interests: Compilers, program analysis and optimization, programming language implementation. (Ph.D., The State University of New York at Stony Brook, 1986)

Todd Proebsting

Professor Office: GS 747 Interests: Programming languages, compilers, cloud computing, information aggregation. (Ph.D., University of Wisconsin, 1992)

PhD Students

Tanner Finken

PhD Student Office: GS 725 Interests: Programming Languages and Compilers Advisor: Dr. Saumya Debray

Terrence Lim

PhD Student Office: GS 725 Interests: Compilers, Database, and Programming Languages Advisor: Dr. Saumya Debray

Brandon Neth

PhD Student Office: GS 749 Interests: Programming Languages, Compilers and High Performance Computing Advisor: Dr. Michelle Strout