λ3: Lugano Language Lab

The alliteratively named Lugano Language Lab conducts research on programming languages, compilers, tools, and methodologies for constructing safe, secure, and efficient systems.

Open positions

The Lugano Language Lab is seeking talented and enthusiastic students at all levels—Ph.D., Master's, and Bachelor's—to work on research. If you're interested in programming languages, compilers, or software engineering, please email .

Potential Ph.D. students can apply here

Members

Faculty

Students

Current projects

Firepile
A library for GPU programming in Scala currently being developed with Derek White at the University of Texas at Arlington.
Funicular
A shared-memory concurrency library for Scala. It follows on from the X10 project, attempting to implement X10 features and extend them in the context of Scala.
Polyglot
An extensible compiler framework that supports the easy creation of compilers for languages similar to Java, while avoiding code duplication. The Polyglot framework is useful for domain-specific languages, exploration of language design, and for simplified versions of Java for pedagogical use. Polyglot has been used to implement several modifications to Java, including Jif, JMatch, J&, and X10. Joint work with Andrew Myers, Michael Clarkson, Stephen Chong, and others. Source code.

Previous projects

X10
A type-safe, parallel, distributed, object-oriented programming language being developed at IBM.
Thorn
A scripting language framework with distributed components, gradual typing, and an extensible plugin system. Joint work with Purdue and IBM Research.
Nested inheritance
A language feature that provides scalable extensibility, the ability to extend a body of code while writing new code propotional to the differences in functionality and while ensuring type safety. Joint work with Andrew Myers, Xin Qi, and Stephen Chong.

Recent Publications

Loading publications...

Click below for the publications page.

More