Named and default arguments for polymorphic object-oriented languages: a discussion on the design implemented in the Scala language

  • Authors:
  • Lukas Rytz;Martin Odersky

  • Affiliations:
  • École Polytechnique Fédérale de Lausanne;École Polytechnique Fédérale de Lausanne

  • Venue:
  • Proceedings of the 2010 ACM Symposium on Applied Computing
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

This article describes the design and implementation of named and default arguments in the Scala programming language. While these features are available in many other languages there are significant differences in the actual implementations. We present a design that unifies the most reasonable properties for an object-oriented language and provides new possibilities by allowing default arguments on generic and implicit parameters. We also present a solution for the problem of writing a lightweight generic update function for algebraic datatypes.