An Overview of the Scala Programming Language
- Martin Odersky, P. Altherr, Matthias Zenger
- Computer Science
- 2004
This paper gives an overview of the Scala language for readers who are familar with programming methods and programming language design.
Lightweight modular staging: a pragmatic approach to runtime code generation and compiled DSLs
- Tiark Rompf, Martin Odersky
- Computer ScienceInternational Conference on Generative…
- 10 October 2010
It is argued that lightweight modular staging enables a form of language virtualization, i.e. allows to go from a pure-library embedded language to one that is practically equivalent to a stand-alone implementation with only modest effort.
Programming in Scala: A Comprehensive Step-by-Step Guide, 2nd Edition
- Martin Odersky, Lex Spoon, B. Venners
- Computer Science
- 13 December 2010
Programming in Scala introduces functional programming from the practitioner's perspective, and describes advanced language features that can make you a better, more productive developer.
Making the future safe for the past: adding genericity to the Java programming language
- Gilad Bracha, Martin Odersky, David Stoutamire, P. Wadler
- Computer ScienceConference on Object-Oriented Programming Systems…
- 1 October 1998
GJ increases expressiveness and safety: code utilizing generic libraries is no longer buried under a plethora of casts, and the corresponding casts inserted by the translation are guaranteed to not fail.
Pizza into Java: translating theory into practice
- Martin Odersky, P. Wadler
- Computer ScienceACM-SIGACT Symposium on Principles of Programming…
- 1997
Pizza is a strict superset of Java that incorporates three ideas from the academic community: parametric polymorphism, higher-order functions, and algebraic data types. Pizza is defined by…
Scalable component abstractions
- Martin Odersky, Matthias Zenger
- Computer ScienceConference on Object-Oriented Programming Systems…
- 17 October 2005
Three programming language abstractions are identified for the construction of reusable components: abstract type members, explicit selftypes, and modular mixin composition, which enable an arbitrary assembly of static program parts with hard references between them to be transformed into a system of reusable component.
A call-by-need lambda calculus
- J. Maraist, Martin Odersky, P. Wadler
- Computer ScienceACM-SIGACT Symposium on Principles of Programming…
- 25 January 1995
This paper derives an equational characterization of call-by-need and proves it correct with respect to the original lambda calculus and is a strictly smaller theory than the lambda calculus.
Scala Actors: Unifying thread-based and event-based programming
- Philipp Haller, Martin Odersky
- Computer ScienceTheoretical Computer Science
- 1 February 2009
Independently Extensible Solutions to the Expression Problem
- Matthias Zenger, Martin Odersky
- Computer Science
- 2004
Solutions to the expression problem are proposed that make it possible to combine independent extensions in a flexible, modular, and typesafe way and are formulated in the programming language Scala.
A Statically Safe Alternative to Virtual Types
- Kim B. Bruce, Martin Odersky, P. Wadler
- Computer ScienceEuropean Conference on Object-Oriented…
- 20 July 1998
This paper suggests a variant of virtual types which has similar expressiveness, but supports safe static type checking, which results in a language in which both parametric types and virtual types are well-integrated, and which is statically type-safe.
...
...