Computing Applications

Grace: A Manifesto For a New Educational Object-Oriented Programming Language

Jack Rosenberger
CACM Senior Editor Jack Rosenberger

One of the most interesting and ambitious panel discussions at SPLASH 2010 was “Manifesto: a New Educational Programming Language” in which Andrew Black, Kim B. Bruce, and James Noble presented their proposal for a new educational object-oriented programming language called Grace. The idea for Grace came about at ECOOP 2010 in Maribor, Slovenia, when Black, Bruce, Noble, and a set of like-minded computer science teachers grappled with the question, “What are we going to be teaching in CS intro courses in five years?”

The threesome decided to team up with the goal of developing Grace by 2015. Their main motivations involve wanting, in the early part of the CS curriculum, a new language that possesses low overhead for simple programs, language levels, solid generics, static and dynamic typing, high level constructs for concurrency/parallelism, support for immutable objects, and power of functional constructs.

As trio explained during the SPLASH panel discussion, the fundamentals of Grace will include everything is an object, simple method dispatch, single inheritance, language levels for teaching, extensible via libraries (control and data), and readability for Java, C, Python, and Scala programmers. Ideally, they want the features of Grace to include uncluttered code, layout significance, structural typing, local type inference, separate subtyping from inheritance, user-definable operators, sensible generics, lambdas, support for static and dynamic typing, and parallel programming.

Their SPLASH paper, “Designing the Next Educational Programming Language,” is available here

Black, Bruce, and Noble have set up a Web site,, which will feature material for review, news, and more. Most importantly, they will need a lot of assistance and support, and are seeking programmers, implementers, library and IDE writers, testers, teachers, and others to help with their project.

Interested? If so, here’s their contact info:

Alex Black:
Kim B. Bruce:
James Noble:

Jack Rosenberger is senior editor, news, of Communications of the ACM.

Join the Discussion (0)

Become a Member or Sign In to Post a Comment

The Latest from CACM

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved

Communications of the ACM (CACM) is now a fully Open Access publication.

By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.

Learn More