Greg Morrisett
Assistant Professor
jgm@cs.cornell.edu
http://www.cs.cornell.edu/home/jgm/
PhD CMU, 1995
My primary research interests are in the development of programming language and
compiler technology. I am particularly interested in exploring high-level language
facilities for building reliable, secure, and high-performance systems software (e.g. run-time systems, distributed systems). I have concentrated on producing code that is
faster and consumes less memory without sacrificing safety or robustness. |
|
My recent work has focused on type systems for extremely low-level languages. Our group has just designed and implemented a type checker for the Intel x86 architecture, and we showed how high-level languages, such as ML, Scheme, Safe-C, and Java, may be compiled to assembly
language, yet still be type-checked. This technology provides a means to safely extend systems such as kernels, web browsers, or
hand-helds without the overheads of a virtual machine or just-in-time compiler.
Other recent topics of interest include type systems for run-time type dispatch, proof-carrying code, run-time code generation and the connection with modal type systems.
Awards
-
National Science Foundation Career Award, 1999
-
Sloan Foundation Fellow, 1998
University Activities
-
Computer Science Ph.D. admissions committee
Professional Activities
-
IFIP Working Group 2.8 on
Functional Programming
-
Program Committee Chair:
1998 ACM Workshop on ML
-
Program Committees: 1997
ACM Workshop on Types in
Compilation; 1998 ACM Conf.
Programming Language Design
and Implementation; 1998
Asian Computing Conf.; 1999
Latin American Conf.
Functional Programming
Lectures
-
Type-checking x86 assembly
code. Computer Science,
MIT, Mar. 1999.
-
Language-based security
mechanisms. Computer
Science, Univ. of Virginia, Oct
1998.
-
Proofs, types, and safe mobile
code. Annual Conference of the
European Association for
Computer Science Logic,
Brno,
Czech Republic, Aug. 1998.
Publications
-
Principals in programming
languages. ACM International
Conference on Functional
Programming, Paris, France
(Sept. 1999) (with S.
Zdancewic and D. Grossman).
-
Typed memory management in
a calculus of capabilities.
Proc.
ACM Symp. Principles of
Programming Languages 26
(Jan. 1999), 262-275 (with K.
Crary and D. Walker).
-
Type-safe linking and modular
assembly language. Proc. ACM
Symp. Principles of
Programming Languages 26
(Jan. 1999), 250-261 (with N.
Glew).
-
TalX86: A realistic typed
assembly language. ACM
Workshop on Compiler
Support for Systems
Software,
Atlanta, GA (May 1999) (with
K. Crary, N. Glew, D.
Grossman, R. Samuels, F.
Smith, D. Walker, S.
Weirich,
and S. Zdancewic).
-
Intentional polymorphism in
type-erasure semantics. ACM
International Conference on
Functional Programming,
Baltimore, MD (Sept. 1998)
(with K. Crary and S. Weirich)
|