posted on 2021-11-14, 10:48authored byHomer, Michael
<p>Grace is a programming language under development aimed at education. Grace is object-oriented, imperative, and block-structured, and intended for use in first- and second-year object-oriented programming courses. We present a number of language features we have designed for Grace and implemented in our self-hosted compiler. We describe the design of a pattern-matching system with object-oriented structure and minimal extension to the language. We give a design for an object-based module system, which we use to build dialects, a means of extending and restricting the language available to the programmer, and of implementing domain-specific languages. We show a visual programming interface that melds visual editing (à la Scratch) with textual editing, and that uses our dialect system, and we give the results of a user experiment we performed to evaluate the usability of our interface.</p>
History
Copyright Date
2014-01-01
Date of Award
2014-01-01
Publisher
Te Herenga Waka—Victoria University of Wellington
Rights License
Author Retains Copyright
Degree Discipline
Computer Science
Degree Grantor
Te Herenga Waka—Victoria University of Wellington
Degree Level
Doctoral
Degree Name
Doctor of Philosophy
ANZSRC Type Of Activity code
970108 Expanding Knowledhe in the Information and Computing Sciences