Abstract Interpretation of Student Programs as a Strategy for Courseware Development

Johnson, Colin G. (2006) Abstract Interpretation of Student Programs as a Strategy for Courseware Development. In: Methods, Materials and Tools for Programming Education, May 2006, 14-20, Tampere, Finland. (Full text available)

Download (210kB) Preview
Official URL


What kinds of feedback can we give to students as part of a computer-based system for supporting programming? One kind of feedback is whether the idioms that students use in their programs are typical of experienced programmers. In this paper we talk about how such idioms/patterns/roles/clich303251s are used in a tacit fashion by experienced programmers, and how natural language tags for such idioms (e.g. roles of variables) can be used to articulate this knowledge. Based on these ideas we suggest a strategy for giving feedback to students in courseware: students annotate their program using an annotation language that captures these idioms; then abstract interpretation of programs is used by the courseware to check these annotations and provide focused feedback. As a case study, we show how roles of variables can be annotated and those annotations automatically checked in the BlueJ programming environment.

Item Type: Conference or workshop item (Paper)
Uncontrolled keywords: education; programming teaching; computer-aided learning; program analysis
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Faculties > Sciences > School of Computing > Applied and Interdisciplinary Informatics Group
Faculties > Sciences > School of Computing > Computing Education Group
Depositing User: Mark Wheadon
Date Deposited: 24 Nov 2008 18:04 UTC
Last Modified: 17 Jul 2012 14:35 UTC
Resource URI: https://kar.kent.ac.uk/id/eprint/14479 (The current URI for this page, for reference purposes)
  • Depositors only (login required):


Downloads per month over past year