![]() |
David Walker |
Research:
Statically typed languages such as Java or ML have important software engineering advantages over their untyped or dynamically typed counterparts. Some researchers compile these statically typed languages into typed intermediate languages before stripping types from the language and generating machine code. This technique enables type-directed optimizations and transformations to be performed on intermediate representations. Furthermore, all of the software engineering advantages conferred by types aid compiler implementers as they write and debug new transformations on the typed IL. Typed intermediate languages are also important in the security domain. Type safety implies many important security properties and type theory provides a sound foundation for the construction of a better Java virtual machine.
![]() | I am investigating typed intermediate languages and their application in compilation and security. As a member of the TAL project, I am examining techniques for propagating type information through the entire compilation process, beyond the level of traditional intermediate languages and bytecodes, to maximize the advantages gained by compiling with types. Currently, the TAL group is building a type-directed compiler which generates well-typed assembly code as its output. The Typed Assembly Language(TAL) which we have developed has exciting applications to compiler correctness, and software engineering. Furthermore, our compiler and TAL type-checker can be extended to a system in which untrusted applets can be executed safely and efficiently. |
Curriculum Vitae (Last Updated June 1999)
Teaching:
Fun
|
![]() |
![]() |
Quote of the Month (changed semi-annually)
Law of Probable Dispersal:Whatever it is that hits the fan will not be evenly distributed. |