OXFORD UNIVERSITY COMPUTING LABORATORY

Scala for Generic Programmers

Bruno C. d. S. Oliveira and Jeremy Gibbons

abstract

Datatype-generic programming involves parametrization by the shape of data, in the form of type constructors such as `list of'. Most approaches to datatype-generic programming are developed in the lazy functional programming language Haskell. We argue that the functional object-oriented language Scala is in many ways a better setting. Not only does Scala provide equivalents of all the necessary functional programming features (such parametric polymorphism, higher-order functions, higher-kinded type operations, and type- and constructor-classes), but it also provides the most useful features of object-oriented languages (such as subtyping, overriding, traditional single inheritance, and multiple inheritance in the form of traits). We show how this combination of features benefits datatype-generic programming, using three different approaches as illustrations.

info

book title

Proceedings of the ACM SIGPLAN Workshop on Generic Programming (WGP'08)

editor

Ralf Hinze

journal

Workshop in Generic Programming

month

July

year

2008

links

BibTeX

Link (pdf)

related pages

people

Random Image
Random Image
Random Image