Martin Odersky

Affiliations:
  • Swiss Federal Institute of Technology in Lausanne, Switzerland


According to our database1, Martin Odersky authored at least 133 papers between 1987 and 2023.

Collaborative distances:

Timeline

Legend:

Book 
In proceedings 
Article 
PhD thesis 
Dataset
Other 

Links

Online presence:

On csauthors.net:

Bibliography

2023
Capturing Types.
ACM Trans. Program. Lang. Syst., December, 2023

Adaptive Recursive Query Optimization.
CoRR, 2023

Degrees of Separation: A Flexible Type System for Data Race Prevention.
CoRR, 2023

Formalizing Box Inference for Capture Calculus.
CoRR, 2023

2022
Type-level programming with match types.
Proc. ACM Program. Lang., 2022

Scoped Capabilities for Polymorphic Effects.
CoRR, 2022

2021
Tracking Captured Variables in Types.
CoRR, 2021

Safer exceptions for Scala.
Proceedings of the SCALA 2021: Proceedings of the 12th ACM SIGPLAN International Symposium on Scala, 2021

Virtual ADTs for portable metaprogramming.
Proceedings of the MPLR '21: 18th ACM SIGPLAN International Conference on Managed Programming Languages and Runtimes, 2021

Multi-stage programming with generative and analytical macros.
Proceedings of the GPCE '21: Concepts and Experiences, Chicago, IL, USA, October 17, 2021

2020
A type-and-effect system for object initialization.
Proc. ACM Program. Lang., 2020

Semantics-preserving inlining for metaprogramming.
Proceedings of the SPLASH '20: Conference on Systems, 2020

2018
Functional Stream Libraries and Fusion: What's Next (NII Shonan Meeting 2018-14).
NII Shonan Meet. Rep., 2018

Simplicitly: foundations and applications of implicit function types.
Proc. ACM Program. Lang., 2018

Truly abstract interfaces for algebraic data types: the extractor typing problem.
Proceedings of the 9th ACM SIGPLAN International Symposium on Scala, 2018

Interflow: interprocedural flow-sensitive type inference and method duplication.
Proceedings of the 9th ACM SIGPLAN International Symposium on Scala, 2018

Initialization patterns in Dotty.
Proceedings of the 9th ACM SIGPLAN International Symposium on Scala, 2018

A practical unification of multi-stage programming and macros.
Proceedings of the 17th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, 2018

2017
Cache-Aware Lock-Free Concurrent Hash Tries.
CoRR, 2017

Miniphases: compilation using modular and efficient tree transformations.
Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation, 2017

2016
Implementing higher-kinded types in Dotty.
Proceedings of the 7th ACM SIGPLAN Symposium on Scala, 2016

Call graphs for languages with parametric polymorphism.
Proceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, 2016

The Essence of Dependent Object Types.
Proceedings of the A List of Successes That Can Change the World, 2016

2015
Improving the Interoperation between Generics Translations.
Proceedings of the Principles and Practices of Programming on The Java Platform, 2015

Efficient Lock-Free Work-Stealing Iterators for Data-Parallel Collections.
Proceedings of the 23rd Euromicro International Conference on Parallel, 2015

Automating ad hoc data representation transformations.
Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, 2015

Isolates, channels, and event streams for composable distributed programming.
Proceedings of the 2015 ACM International Symposium on New Ideas, 2015

Conc-Trees for Functional and Parallel Programming.
Proceedings of the Languages and Compilers for Parallel Computing, 2015

2014
Delite: A Compiler Architecture for Performance-Oriented Embedded Domain-Specific Languages.
ACM Trans. Embed. Comput. Syst., 2014

Unifying functional and object-oriented programming with Scala.
Commun. ACM, 2014

Late data layout: unifying data representation transformations.
Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications, 2014

Staged parser combinators for efficient data processing.
Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications, 2014

Foundations of path-dependent types.
Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications, 2014

Functional programming for all! scaling a MOOC for students and professionals alike.
Proceedings of the 36th International Conference on Software Engineering, 2014

Yin-yang: concealing the deep embedding of DSLs.
Proceedings of the Generative Programming: Concepts and Experiences, 2014

Hardware system synthesis from Domain-Specific Languages.
Proceedings of the 24th International Conference on Field Programmable Logic and Applications, 2014

Containers and aggregates, mutators and isolates for reactive programming.
Proceedings of the Fifth Annual Scala Workshop, 2014

The evolution of Scala: PLE'14 keynote.
Proceedings of the 1st Workshop on Programming Language Evolution, 2014

Spores: A Type-Based Foundation for Closures in the Age of Concurrency and Distribution.
Proceedings of the ECOOP 2014 - Object-Oriented Programming - 28th European Conference, Uppsala, Sweden, July 28, 2014

ScalaDyno: making name resolution and type checking fault-tolerant.
Proceedings of the Fifth Annual Scala Workshop, 2014

2013
Optimizing data structures in high-level programs: new directions for extensible compilers based on staging.
Proceedings of the 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2013

Miniboxing: improving the speed to code size tradeoff in parametric polymorphism translations.
Proceedings of the 2013 ACM SIGPLAN International Conference on Object Oriented Programming Systems Languages & Applications, 2013

Instant pickles: generating object-oriented pickler combinators for fast and extensible serialization.
Proceedings of the 2013 ACM SIGPLAN International Conference on Object Oriented Programming Systems Languages & Applications, 2013

Near Optimal Work-Stealing Tree Scheduler for Highly Irregular Data-Parallel Workloads.
Proceedings of the Languages and Compilers for Parallel Computing, 2013

Forge: generating a high performance DSL implementation from a declarative specification.
Proceedings of the Generative Programming: Concepts and Experiences, 2013

Spiral in scala: towards the systematic construction of generators for performance libraries.
Proceedings of the Generative Programming: Concepts and Experiences, 2013

Making domain-specific hardware synthesis tools cost-efficient.
Proceedings of the 2013 International Conference on Field-Programmable Technology, 2013

Composition and Reuse with Compiled Domain-Specific Languages.
Proceedings of the ECOOP 2013 - Object-Oriented Programming, 2013

A flow-insensitive, modular effect system for purity.
Proceedings of the 15th Workshop on Formal Techniques for Java-like Programs, 2013

Higher-Order Reactive Programming with Incremental Lists.
Proceedings of the ECOOP 2013 - Object-Oriented Programming, 2013

2012
Scala-Virtualized: linguistic reuse for deep embeddings.
High. Order Symb. Comput., 2012

Lightweight modular staging: a pragmatic approach to runtime code generation and compiled DSLs.
Commun. ACM, 2012

Concurrent tries with efficient non-blocking snapshots.
Proceedings of the 17th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, 2012

StagedSAC: a case study in performance-oriented DSL development.
Proceedings of the ACM SIGPLAN 2012 Workshop on Partial Evaluation and Program Manipulation, 2012

Scala-virtualized.
Proceedings of the ACM SIGPLAN 2012 Workshop on Partial Evaluation and Program Manipulation, 2012

FlowPools: A Lock-Free Deterministic Concurrent Dataflow Abstraction.
Proceedings of the Languages and Compilers for Parallel Computing, 2012

Lightweight Polymorphic Effects.
Proceedings of the ECOOP 2012 - Object-Oriented Programming, 2012

When Compilers Are Mirrors.
Proceedings of the ECOOP 2012 - Object-Oriented Programming, 2012

JavaScript as an Embedded DSL.
Proceedings of the ECOOP 2012 - Object-Oriented Programming, 2012

2011
Implementing Domain-Specific Languages for Heterogeneous Parallel Computing.
IEEE Micro, 2011

Building-Blocks for Performance Oriented DSLs
Proceedings of the Proceedings IFIP Working Conference on Domain-Specific Languages, 2011

Lock-Free Resizeable Concurrent Tries.
Proceedings of the Languages and Compilers for Parallel Computing, 2011

OptiML: An Implicitly Parallel Domain-Specific Language for Machine Learning.
Proceedings of the 28th International Conference on Machine Learning, 2011

A Generic Parallel Collection Framework.
Proceedings of the Euro-Par 2011 Parallel Processing - 17th International Conference, 2011

Future-Proofing Collections: From Mutable to Persistent to Parallel.
Proceedings of the Compiler Construction - 20th International Conference, 2011

A Heterogeneous Parallel Framework for Domain-Specific Languages.
Proceedings of the 2011 International Conference on Parallel Architectures and Compilation Techniques, 2011

2010
Named and default arguments for polymorphic object-oriented languages: a discussion on the design implemented in the Scala language.
Proceedings of the 2010 ACM Symposium on Applied Computing (SAC), 2010

Contracts for Scala.
Proceedings of the Runtime Verification - First International Conference, 2010

Type classes as objects and implicits.
Proceedings of the 25th Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2010

Language virtualization for heterogeneous parallel computing.
Proceedings of the 25th Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2010

Capabilities for Uniqueness and Borrowing.
Proceedings of the ECOOP 2010, 2010

2009
Scala Actors: Unifying thread-based and event-based programming.
Theor. Comput. Sci., 2009

Essentials of Scala.
Proceedings of the Langages et Modèles à Objets, 2009

Implementing first-class polymorphic delimited continuations by a type-directed selective CPS-transform.
Proceedings of the Proceeding of the 14th ACM SIGPLAN international conference on Functional programming, 2009

Fighting bit Rot with Types (Experience Report: Scala Collections).
Proceedings of the IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science, 2009

Compiling structural types on the JVM: a comparison of reflective and generative techniques from Scala's perspective.
Proceedings of the 4th workshop on the Implementation, 2009

Compiling generics through user-directed type specialization.
Proceedings of the 4th workshop on the Implementation, 2009

2008
Generics of a higher kind.
Proceedings of the 23rd Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2008

Scala Roles: Reusable Object Collaborations in a Library.
Proceedings of the Software and Data Technologies - Third International Conference, 2008

Scala Roles - A Lightweight Approach Towards Reusable Collaborations.
Proceedings of the ICSOFT 2008, 2008

2007
Matching Objects with Patterns.
Proceedings of the ECOOP 2007 - Object-Oriented Programming, 21st European Conference, Berlin, Germany, July 30, 2007

Actors That Unify Threads and Events.
Proceedings of the Coordination Models and Languages, 9th International Conference, 2007

Translation Correctness for First-Order Object-Oriented Pattern Matching.
Proceedings of the Programming Languages and Systems, 5th Asian Symposium, 2007

2006
The Scala experiment: can we provide better language support for component systems?
Proceedings of the 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2006

A Core Calculus for Scala Type Checking.
Proceedings of the Mathematical Foundations of Computer Science 2006, 2006

Event-Based Programming Without Inversion of Control.
Proceedings of the Modular Programming Languages, 7th Joint Modular Languages Conference, 2006

Scalable Programming Abstractions for XML Services.
Proceedings of the Dependable Systems: Software, Computing, Networks, 2006

2005
Scalable component abstractions.
Proceedings of the 20th Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2005

2004
Guest editorial.
ACM Trans. Program. Lang. Syst., 2004

2003
An Equational Theory for Transactions.
Proceedings of the FST TCS 2003: Foundations of Software Technology and Theoretical Computer Science, 2003

A Nominal Theory of Objects with Dependent Types.
Proceedings of the ECOOP 2003, 2003

PiLib: A Hosted Language for Pi-Calculus Style Concurrency.
Proceedings of the Domain-Specific Program Generation, International Seminar, 2003

2001
Tail call elimination on the Java Virtual Machine.
Proceedings of the First International Workshop on Multi-Language Infrastructure and Interoperability, 2001

Colored local type inference.
Proceedings of the Conference Record of POPL 2001: The 28th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2001

Extensible Algebraic Datatypes with Defaults.
Proceedings of the Sixth ACM SIGPLAN International Conference on Functional Programming (ICFP '01), 2001

2000
Functional Nets.
Proceedings of the Programming Languages and Systems, 2000

Programming with Functional Nets.
Proceedings of the School of Niklaus Wirth, "The Art of Simplicity", 2000

Objects + Views = Components?
Proceedings of the Abstract State Machines, 2000

An Introduction to Functional Nets.
Proceedings of the Applied Semantics, International Summer School, 2000

1999
Type Inference with Constrained Types.
Theory Pract. Object Syst., 1999

1998
The Call-by-Need Lambda Calculus.
J. Funct. Program., 1998

Making the Future Safe for the Past: Adding Genericity to the Java Programming Language.
Proceedings of the 1998 ACM SIGPLAN Conference on Object-Oriented Programming Systems, 1998

Leftover curry and reheated Pizza: how functional programming nourishes software reuse.
Proceedings of the Fifth International Conference on Software Reuse, 1998

Programming with Variable Functions.
Proceedings of the third ACM SIGPLAN International Conference on Functional Programming (ICFP '98), 1998

A Statically Safe Alternative to Virtual Types.
Proceedings of the ECOOP'98, 1998

Two Ways to Bake Your Pizza - Translating Parameterised Types into Java.
Proceedings of the Generic Programming, 1998

1997
A Confluent Calculus for Concurrent Constraint Programming.
Theor. Comput. Sci., 1997

Challenges in Type Systems Research.
ACM SIGPLAN Notices, 1997

Pizza into Java: Translating Theory into Practice.
Proceedings of the Conference Record of POPL'97: The 24th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 1997

1996
Negative Boolean Constraints.
Theor. Comput. Sci., 1996

Putting Type Annotations to Work.
Proceedings of the Conference Record of POPL'96: The 23rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 1996

1995
Special Issue on State in Programming Languages - Introduction.
LISP Symb. Comput., 1995

Spatial Query Optimization: From Boolean Constraints to Range Queries.
J. Comput. Syst. Sci., 1995

Call-by-name, call-by-value, call-by-need and the linear lambda calculus.
Proceedings of the Eleventh Annual Conference on Mathematical Foundations of Programming Semantics, 1995

The Call-by-Need Lambda Calculus.
Proceedings of the Conference Record of POPL'95: 22nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 1995

Polarized Name Passing.
Proceedings of the Foundations of Software Technology and Theoretical Computer Science, 1995

A Second Look at Overloading.
Proceedings of the seventh international conference on Functional programming languages and computer architecture, 1995

A Confluent Calculus for Concurrent Constraint Programming with Guarded Choice.
Proceedings of the Principles and Practice of Constraint Programming, 1995

1994
Polymorphic Type Inference and Abstract Data Types.
ACM Trans. Program. Lang. Syst., 1994

A Type System for a Lambda Calculus with Assignments.
Proceedings of the Theoretical Aspects of Computer Software, 1994

A Functional Theory of Local Names.
Proceedings of the Conference Record of POPL'94: 21st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 1994

1993
Defining Context-Dependent Syntax Without Using Contexts.
ACM Trans. Program. Lang. Syst., 1993

Call by Name, Assignment, and the Lambda Calculus.
Proceedings of the Conference Record of the Twentieth Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 1993

1992
Parametric Type Classes.
Proceedings of the Conference on Lisp and Functional Programming, 1992

Observers for Linear Types.
Proceedings of the ESOP '92, 1992

1991
How to Make Destructive Updates Less Destructive.
Proceedings of the Conference Record of the Eighteenth Annual ACM Symposium on Principles of Programming Languages, 1991

Constraint-Based Query Optimization for Spatial Databases.
Proceedings of the Tenth ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems, 1991

Type Classes are Signatures of Abstract Types.
Proceedings of the Declarative Programming, 1991

Building visual language parsers.
Proceedings of the Conference on Human Factors in Computing Systems, 1991

1990
Extending MODULA-2 for object-oriented programming.
Microprocess. Microsystems, 1990

1989
A new approach to formal language definition and its application to Oberon.
PhD thesis, 1989

MINOS: A New Approach to the Design of an Input/Output Library for Modula-2.
Struct. Program., 1989

1987
Einfache und effiziente inkrementelle Syntaxanalyse.
Inform. Forsch. Entwickl., 1987


  Loading...