Scheme with classes, mixins, and traits

Matthew Flatt*, Robert Brace Findler, Matthias Felleisen

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingConference contribution

33 Scopus citations


The Scheme language report advocates language design as the composition of a small set of orthogonal constructs, instead of a large accumulation of features. In this paper, we demonstrate how such a design scales with the addition of a class system to Scheme. Specifically, the PLT Scheme class system is a collection of orthogonal linguistic constructs for creating classes in arbitrary lexical scopes and for manipulating them as first-class values. Due to the smooth integration of classes and the core language, programmers can express mixins and traits, two major recent innovations in the object-oriented world. The class system is implemented as a macro in terms of procedures and a record-type generator; the mixin and trait patterns, in turn, are naturally codified as macros over the class system.

Original languageEnglish (US)
Title of host publicationProgramming Languages and Systems - 4th Asian Symposium, APLAS 2006, Proceedings
PublisherSpringer Verlag
Number of pages20
ISBN (Print)3540489371, 9783540489375
StatePublished - 2006
Event4th Asian Symposium on Programming Languages and Systems, APLAS 2006 - Sydney, Australia
Duration: Nov 8 2006Nov 10 2006

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume4279 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349


Other4th Asian Symposium on Programming Languages and Systems, APLAS 2006

ASJC Scopus subject areas

  • Theoretical Computer Science
  • General Computer Science


Dive into the research topics of 'Scheme with classes, mixins, and traits'. Together they form a unique fingerprint.

Cite this