ACL2 in DrScheme

  • Authors:
  • Dale Vaillancourt;Rex Page;Matthias Felleisen

  • Affiliations:
  • Northeastern University, Boston, MA;University of Oklahoma, Norman, OK;Northeastern University, Boston, MA

  • Venue:
  • ACL2 '06 Proceedings of the sixth international workshop on the ACL2 theorem prover and its applications
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Teaching undergraduates to develop software in a formal framework such as ACL2 poses two immediate challenges. First, students typically do not know applicative programming and are often unfamiliar with ACL2's syntax. Second, for motivational reasons, students prefer to work on projects that involve designing interactive, graphical applications.In this paper, we present DRACULA, a pedagogic programming environment that partially solves these problems. The environment adds a subset of Applicative Common Lisp to DRSCHEME, an integrated programming environment for Scheme. DRACULA thus inherits DRSCHEME's pedagogic capabilities, especially its treatment of syntax and run-time errors. Further, DRACULA also comes with a library for programming interactive, graphical games. The library interface forces students to think of a graphical user interface in terms of state-transition functions, enabling them later to prove theorems about their games in ACL2. DRACULA provides a graphical front-end to the ACL2 theorem prover for this purpose. In short, DRACULA allows the formulation of student projects that represent an important intermediate point between data structure exercises in theorem proving and industrial applications.