Fields of expertise
BiographyMartin Odersky heads the programming research group at EPFL. His research interests cover fundamental as well as applied aspects of programming languages. They include semantics, type systems, programming language design, and compiler construction. The main focus if his work lies in the integration of object-oriented and functional programming. His research thesis is that the two paradigms are just two sides of the same coin and should be unified as much as possible. To prove this he has experimented a number of language designs, from Pizza to GJ to Functional Nets. He has also influenced the development of Java as a co-designer of Java generics and as the original author of the current javac reference compiler. His current work concentrates on the Scala programming language, which unifies FP and OOP, while staying completely interoperable with Java and .NET. Martin Odersky got his doctorate from ETHZ, in 1989. He held research positions at the IBM T.J. Watson Research Center from 1989 and at Yale University from 1991. He was then a professor at the University of Karlsruhe from 1993 and at the University of South Australia from 1997. He joined EPFL as full professor in 1999. He is associate editor of the Journal of Functional Programming and member of IFIP WG 2.8. He was conference chair for ICFP 2000, and program chair for ECOOP 2004 as well as ETAPS/CC 2007.
CURRENT WORKScala is a modern multi-paradigm programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages.
Programming Language Abstractions for Mobile Code.
Composing services, using staging and data binding.
Reproducible Concurrent Programs through Software Transactions.
Pluggable Type Systems. Martin Odersky's research is sponsored by the Swiss National Science Foundation, the European Commission, and the Hasler Foundation.
Scalable Component Abstractions2005. OOPSLA 2005, San Diego, October 2005. p. 41–57. DOI : 10.1145/1094811.1094815.
A Nominal Theory of Objects with Dependent Types2002
Functional Nets2000. European Symposium on Programming 2000, Programming Languages and Systems 9th European Symposium on Programming, ESOP 2000 Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2000, Berlin, Germany, March 25 – April 2, 2000. p. 1-25. DOI : 10.1007/3-540-46425-5_1.
Making the future safe for the past: Adding Genericity to the Java Programming Language1998. OOPSLA 1998.
Pizza into Java: Translating theory into practice1997. 24th ACM Symposium on Principles of Programming Languages, Paris, France, January 1997. p. 146–159. DOI : 10.1145/263699.263715.
Teaching & PhD