Teaching with Grace

Embed code for this video

Copy the code above to embed our video on your website/blog.

Close

Video format

Option selected may change based on video formats available and browser capability.

Close

Download

Right click “Save as…”

Slides

We are engaged in the design of a new object-oriented educational programming language called Grace.

Our motivation is frustration with available languages, none of which seems to be suited to our target audience: students in the first two programming courses who are learning to program in an object-oriented style.

Grace aims to be significantly simpler than existing languages, and yet make it possible to write powerful libraries that effectively extend the language.  Grace achieves this by using blocks (representing functions) to define all its "built-in" control structures, so each new kind of data object defined in a library can be equipped with the control structures necessary to make it appear "first class".

Grace also supports, but does not require, static type checking.  This makes it possible to use Grace as a dynamically typed language, to start with dynamic types and add static types later, or to teach static types from the beginning.

We will discuss the design principles behind Grace, and the current state of the language design, as well as soliciting your feedback.  For more information, see http://www.gracelang.org.

Comments Closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.