Research Page for Kim Bruce |
Many of my research papers and my students' honors theses are available on-line. See my vita for a more complete listing of publications.
My research interests consist broadly of the topics of Programming language design and semantics. Specific topics of research have included type theory, object-oriented languages, and models of higher-order lambda calculus including subtypes and bounded polymorphism. This research has been supported by a series of research grants from the National Science Foundation.
Our recent research has resulted in the design of a series of provably statically type-safe object-oriented languages, culminating in the design of LOOM. More recently we have also designed an extention of Java, LOOJ, which includes many of the features of LOOM's type system. The focus of the research has been increasing the expressiveness of languages while maintaining static type safety.
One important feature of all of these languages has been the inclusion of a MyType construct, which represents the type of the object executing the method (typically named self or this). This construct helps solve problems with the modeling of binary methods at the cost of complicating subtyping. We overcome this complication in LOOM by replacing subtyping by a more general relation called matching. Matching retains most of the useful features of subtyping in practice, but is more consistent with the use of MyType. See my papers for a more complete description.
Recent and continuing work has involved
I am always looking for good undergraduates to work for me. The main prerequisite is successful completion of the programming languages course and a strong academic record. Students can work for me during the summer or the academic year. I am also happy to support honors theses on topics related to my research.
Please note that Williams College does not have a graduate program, so that we do not take Master's or Ph.D. students.
Back to:
kim@cs.williams.edu