Grace: the absence of (inessential) difficulty

  • Authors:
  • Andrew P. Black;Kim B. Bruce;Michael Homer;James Noble

  • Affiliations:
  • Portland State University, Portland, OR, USA;Pomona College, Claremont, CA, USA;Victoria University of Wellington, Wellington, New Zealand;Victoria University of Wellington, Wellington, New Zealand

  • Venue:
  • Proceedings of the ACM international symposium on New ideas, new paradigms, and reflections on programming and software
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

We are engaged in the design of a small, simple programming language for teaching novices object-oriented programming. This turns out to be far from a small, simple task. We focus on three of the problems that we encountered, and how we believe we have solved them. The problems are (1) gracefully combining object initialization, inheritance, and immutable objects, (2) reconciling apparently irreconcilable views on type-checking, and (3) providing a family of languages, each suitable for students at different levels of mastery, while ensuring conceptual integrity of their designs. In each case our solutions are based on existing research; our contribution is, by design, consolidation rather than innovation.