[TYPES/announce] summer REU at CMU
Jonathan Aldrich
jonathan.aldrich at cs.cmu.edu
Mon May 2 12:10:18 EDT 2011
I am looking for undergraduate students for a type systems-related
Research Experience for Undergraduates (NSF REU) this summer at Carnegie
Mellon University. Due to NSF eligibility requirements, applicants must
be a US citizen or permanent resident. Two possible projects are listed
below. Interested students please send me their resume at
jonathan.aldrich at cs.cmu.edu
Thanks,
Jonathan Aldrich
- - - - - -
DESIGN AND IMPLEMENTATION OF THE PLAID LANGUAGE AND ITS TYPE SYSTEM
Plaid is a new general-purpose programming language that has a type
system based on affine logic, and leverages those types to build
typestate and implicit concurrency into the language. In Plaid, a state
is like a class, with methods and fields, except that the state of an
object can change over time. This supports interesting new ways of
designing programs, and creates new challenges for efficient
implementation and for a practical type system that can statically track
the changing state of objects.
We are looking for students to work on a compiler and typechecker for
the language, as well as involvement in the language design and the
type theory for students with the right background. For more information:
http://www.plaid-lang.org/
http://www.cs.cmu.edu/~aldrich/reu/
jonathan.aldrich at cs.cmu.edu
IMPROVED ERROR MESSAGES IN THE FUSION PROTOCOL CHECKER
Our studies of industrial software frameworks has shown that the
protocols to use them are extremely complex and easy for programmers to
misuse. To prevent developers from misusing these protocols, we created
the Fusion system. Fusion allows framework developers to specify the
complex protocols to use the framework, using a type-based formalism,
and an associated type-based static analysis runs at compile time to
ensure that plugins meet these specifications.
This summer research project will seek to make the error messages of
Fusion more understandable through visualizations and through
task-directed error messages. Questions to be investigated include how
to describe the heap configuration in which an error occurs, and
suggesting fixes for incorrect specifications or buggy code. The
project is a particularly good match for students who have experience
with software frameworks, and are interested in a broad range of
software engineering and type systems research. For more information:
http://www.plaid-lang.org/
jonathan.aldrich at cs.cmu.edu
More information about the Types-announce
mailing list