|
|
My research interests are in the areas of programming languages and
software engineering with applications in the computational sciences.
In particular, I am interested in language support for
high-performance software libraries and domain specific languages. My
research includes work in type systems, optimizing compilers, program
logics, and language facilities for program generation.
Current Projects
- Gradual typing is a type
system I developed with Walid Taha that allows a program to be
dynamically typed in parts and statically typed in other parts.
The programmer controls which parts are dynamic/statically checked
by either leaving out type annotations on function parameters, or
by putting in the type annotations.
-
Gradual typing for functional languages.
In Scheme and Functional Programming Workshop,
September 2006.
[pdf]
[bibtex]
-
Gradual Typing for Objects.
In ECOOP 2007: European Conference on Object-Oriented Programming,
Berlin, Germany,
July 2007.
[pdf]
[bibtex]
-
Gradual Typing with Unification-based Inference.
In the Dynamic Languages Symposium 2008. [pdf][bib][implementation]
-
Exploring the Design Space of
Higher-Order Casts. In ESOP: European Symposium on Programming,
York, United Kingdom, March 2009.
[pdf]
[bibtex]
-
Threesomes, With and Without Blame. In the First International
Workshop on Script to Program Evolution (STOP
2009) [pdf]
-
Threesomes, With and Without Blame.
Accepted for POPL 2010.
[pdf]
Supersedes the STOP 2009 paper.
- Build To Order BLAS (project webpage)
-
Automating the Generation of Composed Linear Algebra Kernels.
In SC09: the International Conference on High Performance Computing,
Networking, Storage, and Analysis. November, 2009.
[pdf]
[bib]
[DOI]
-
Generating Empirically Optimized Composed Matrix Kernels from MATLAB
Prototypes.
In International Conference on Computational Science 2009.
- Build to Order Linear Algebra Kernels
[pdf][bib]. In
the Workshop on Performance Optimization of High-level
Languages and Libraries (POHLL'08).
- G, a language for generic programming. Planned extensions:
- Meta-programming
- Optimization
- Existential types
Past Research
|
|