David Walker


 


512 South Plain St.
Ithaca, NY 14850
(607) 277-5909
walker@cs.cornell.edu
http://www.cs.cornell.edu/home/walker
             

Department of Computer Science
Cornell University
Upson Hall
Ithaca, NY 14853
(607) 255-5578

 

Research Focus

My research concerns the theory, design, and implementation of modern programming languages. More specifically, I investigate strongly typed languages such as Java and the Java virtual machine and their application in compilation and security. I use types to direct compiler optimizations, to help ensure compiler correctness, and to check invariants that are required by security systems.

In order to maximize the advantages of compiling with types, I study techniques for propagating type information through the entire compilation process, beyond the level of traditional intermediate languages or bytecodes. To this end, I have designed very low-level languages that expose data structure representations and machine-level operations, yet remain type-safe. The type systems of these languages are powerful enough to encode high-level abstractions such as function closures and abstract data types, but flexible enough to admit most conventional compiler backend optimizations. I am also interested in applying type theory, logic, and other formal methods to concurrent programming, security, and software engineering problems.

Research Experience

Under the guidance of Greg Morrisett, I have investigated the type-directed compilation of advanced languages such as ML and a type-safe variant of C. I have helped design strongly-typed compiler intermediate languages and a type-safe assembly language based on the Intel pentium architecture for the TALC compiler project at Cornell. I am currently investigating ways to extend the theory and implementation of the system to automatically check more sophisticated properties than are implied by conventional type systems. For example, I am studying systems that can ensure resources such as memory or mutual exclusion locks are acquired and released correctly. I have also done work on verifying that programs obey expressive security policies including access control policies and resource bounds policies.

Journal Articles

Refereed Conference Papers

Selected Talks

Teaching, Cornell University

Other Academic Activities

Education

Employment Experience

Hobbies

References