This page is no longer maintained — Please continue to the home page at

Language Research

Scala rests on a strong theoretical foundation, as well as on practical experience. You can find below a collection of papers, theses, presentations, and other research resources related to the Scala language and to its development.

Just click on the links below to jump to the corresponding section.

  • Grants
    Grants related to Scala development and research.
  • Papers
    Academic papers published on Scala and its background. Includes works on higher-kinded types, the νObj calculus, continuations, actors, the expression problem, and more.
  • Talks
    Talks and tutorials presented in various academic venues by EPFL researchers. Includes links to many sets of slides about many aspects of the Scala system.
  • Theses
    Academic theses related to Scala and the design of its functionalities.
  • Courses
    Scala has been used in several academic courses outside of EPFL. This section includes some of them, and links to the related teaching material.
  • Presentations
    Additional presentations about Scala, done in various venues. The list is incomplete, as the interest about Scala keeps increasing, and the presentations multiply: please let us know about yours so that we can include it.

If you would like to have your publications or presentation included, please just let us know.





Domain Optimized Parallelization using Polymorphic Language Embeddings and Rewritings (DOPPLER)
Principal Investigator: Martin Odersky, LAMP, EPFL
In collaboration with the Pervasive Parallelism Lab, Stanford University. January 2011


HTML PDF Lightweight Modular Staging: A Pragmatic Approach to Runtime Code Generation and Compiled DSLs
by Tiark Rompf and Martin Odersky, EPFL
GPCE 2010, Eindhoven, The Netherlands, October 2010
HTML PDF Language Virtualization for Heterogeneous Parallel Computing
by Hassan Chafi, Stanford, Zach DeVito, Stanford, Adriaan Moors, EPFL, Tiark Rompf, EPFL, Arvind K. Sujeeth, Stanford, Pat Hanrahan, Stanford, Martin Odersky, EPFL and Kunle Olukotun, Stanford
Onward! 2010, Reno/Tahoe, Nevada, USA, October 2010
HTML PDF Capabilities for Uniqueness and Borrowing
by Philipp Haller and Martin Odersky, EPFL
ECOOP 2010, Maribor, Slovenia, June 2010
AVI PDF Lightweight language support for type-based, concurrent event processing
by Philipp Haller, EPFL
Scala Workshop 2010, Lausanne, Switzerland, April 2010
HTML PDF Deprecating the Observer Pattern
by Ingo Maier, Tiark Rompf and Martin Odersky, EPFL,
Tech Report EPFL-REPORT-148043, March 2010.
HTML PDF Fighting Bit Rot with Types (Experience Report: Scala Collections)
by Martin Odersky, EPFL and Adriaan Moors, K.U.Leuven.
FSTTCS 2009, IIT Kanpur, India, December 15 to 17, 2009
  PDF Compiling Generics Through User-Directed Type Specialization
by Iulian Dragos and Martin Odersky, EPFL,
Fourth ECOOP Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems (ICOOOLPS'2009), Genova, Italy - 6th July 2009
HTML PDF Implementing First-Class Polymorphic Delimited Continuations by a Type-Directed Selective CPS-Transform
by Tiark Rompf, Ingo Maier and Martin Odersky, EPFL,
ICFP 2009, Edinburgh, Scotland, 31st August - 2nd September 2009
  PDF Modular Visitor Components: A Practical Solution to the Expression Families Problem
by Bruno C. d. S. Oliveira, Oxford University Computing Laboratory
ECOOP 2009, Genova, Italy, July 2009.
  PDF Scala Actors: Unifying thread-based and event-based programming
by Philipp Haller and Martin Odersky, EPFL
Theoretical Computer Science, Volume 410, Issues 2-3, February 2009
  PDF Generics of a Higher Kind
by Adriaan Moors, Frank Piessens, K.U.Leuven, and Martin Odersky, EPFL,
In the proceedings of OOPSLA 2008, Nashville (TN), March 2008.
  PDF Implementing Joins using Extensible Pattern Matching
by Philipp Haller, EPFL, and Tom Van Cutsem, Vrije Universiteit Brussel
COORDINATION 2008, Oslo, Norway, June 2008
  PDF Safe Type-level Abstraction in Scala
by Adriaan Moors, Frank Piessens, K.U.Leuven, and Martin Odersky, EPFL,
FOOL 2008, San Francisco (CA), January 2008.
  PDF Translation Correctness for First-Order Object-Oriented Pattern Matching
by Burak Emir, EPFL, Qin Ma, OFFIS, Oldenburg, and Martin Odersky, EPFL,
Tech Report LAMP-REPORT-2007-003, June 2007.
  PDF Actors that Unify Threads and Events
Tech report by Philipp Haller and Martin Odersky.
January 2007.
  PDF Matching Objects With Patterns
Tech report (draft) by Burak Emir, Martin Odersky, and John Williams.
January 2007.
  Scalable Programming Abstractions for XML Services
by Burak Emir, EPFL, Sebastian Maneth, UNSV Sydney, and Martin Odersky, EPFL
Lecture Notes in Computer Science, Dependable Systems: Software, Computing, Networks, Vol. 4028, pp. 103--126, Springer-Verlag, September 2006.
  Event-Based Programming without Inversion of Control
by Philipp Haller, EPFL and Martin Odersky, EPFL
Proceedings of JMLC 06, Oxford, August 2006.
  PDF A Core Calculus for Scala Type Checking
by Vincent Cremet, EPFL, François Garillot, ENS Paris, Sergueï Lenglet, ENS Lyon, and Martin Odersky, EPFL
Proceedings of MFCS 06, Stará Lesná, August 2006.
  PDF On Embedding Domain-specific Languages with User-friendly Syntax
by Gilles Dubochet, EPFL
Proceedings of the 1st ECOOP Workshop on Domain-Specific Program Development,
pp. 19–22, Nantes, July 2006.
  The Scala Plugin for Eclipse
by Sean McDirmid, EPFL and Martin Odersky, EPFL
Proceedings of the Eclipse Technology eXchange Workshop at ECOOP 2006, Nantes, July 3-7, 2006.
Scalable Component Abstractions
by Martin Odersky, EPFL, and Matthias Zenger, Google
Proceedings of OOPSLA 2005, San Diego, October 2005.
  PDF The Expression Problem in Scala
Report by T.N. Esben & al., Aarhus University, May 31, 2005.
PS PDF Inner Classes and Virtual Types
by Philippe Altherr and Vincent Cremet, EPFL,
I&C Technical Report No. 2005013, March 2005.
PS PDF Independently Extensible Solutions to the Expression Problem
by Matthias Zenger and Martin Odersky, EPFL,
I&C Technical Report No. 200433, March 2004.
PS PDF Programmation Multi-niveaux dans Scala
by Damien Pous, ENS Lyon,
Project report, August 2003.
A Nominal Theory of Objects with Dependent Types
(also known as the "vObj paper")
by Martin Odersky, Vincent Cremet, Christine Röckl, Matthias Zenger, EPFL
Proceedings of ECOOP 2003, July 2003.
PS PDF Scala and AsmL side by side
by Stéphane Micheloud, EPFL,
Internal paper, May 2003.
PS PS PiLib: A Hosted Language for Pi-Calculus Style Concurrency
by Vincent Cremet and Martin Odersky, EPFL
Dagstuhl Proceedings: Domain-Specific Program Generation, March 2003.


  PDF Scala - The Next Five Years
by Martin Odersky, EPFL
Scala Lift Off, June 2009, San Francisco.
AVI PDF A Scalable Language
by Martin Odersky, EPFL
Free and Open Source Software Developers' European Meeting (FOSDEM 2009), February 2009.
  PDF The Scala Experience — Programming With Functional Objects
by Martin Odersky, EPFL
Principles and Practice of Programming in Java (PPPJ 2007), September 2007.
  PDF Scala Actors -- Scalable Multithreading on the JVM
by Philipp Haller, EPFL
Invited talk at IBM Development Lab Boeblingen, May 2007.
  PDF The Scala Experiment — Can We Provide Better Language Support for Component Systems?
by Martin Odersky, EPFL
Google Tech Talks, November 2006.
  PDF Tackling Concurrency — Language or Library ?
by Martin Odersky, EPFL
Intel PL Seminar Series, November 2006.
  PDF Tutorial on Writing Modular Programs in Scala
by Gilles Dubochet and Martin Odersky
13 September 2006 at JMLC, Oxford. Try the full hands-on tutorial (with documentation and source code), and its solution. Both packages contain a Scala compiler and are completely stand-alone.
  PDF Poor Man's Type Classes
by Martin Odersky, EPFL
IFIP WG 2.8, July 2006.
  PDF The Scala Experiment — Can We Provide Better Language Support for Component Systems?
by Martin Odersky, EPFL
POPL 2006, January 2006.
PS Types for Objects and Modules
by Martin Odersky, EPFL
Dagstuhl Proceedings: Domain-Specific Program Generation, March 2003.


  PDF Design Patterns and Scala
Master Thesis report by Fredrik Skeel Løkke, DAIMI, Aarhus University.
Thesis No. 1336, March 2009. Supervisor: Erik Ernst.
  PDF Object-Oriented Pattern Matching
PhD Thesis report by Burak Emir, EPFL,
Thesis No. 3899, October 2007.
  PDF An Object-Oriented Programming Model for Event-Based Actors
Master Thesis report by Philipp Haller, Karlsruhe University, May 2006. N.B. The software package can be installed using sbaz and the API documentation is available from the author's web page.
  PDF A Typed Intermediate Language and Algorithms for Compiling Scala by Successive Rewritings
PhD Thesis report by Philippe Altherr, EPFL,
Thesis No. 3509, March 2006.
PS   Foundations for Scala: Semantics and Proof of Virtual Types
PhD Thesis report (draft) by Vincent Cremet, EPFL,
Thesis No. 3556, May 2006.
  PDF Compiling Scala for the Java Virtual Machine
PhD Thesis report by Michel Schinz, EPFL,
Thesis No. 3302, September 2005.


You can also check the list of academic courses and presentations that other people have done on Scala.

If you have an item that you would like us to add to these lists, please just let us know.


Introduction Learn Scala In the Enterprise Research Community Compiler


FrederikThesis.pdf883.64 KB

Copyright © 2012 École Polytechnique Fédérale de Lausanne (EPFL), Lausanne, Switzerland