Functional Programming With Higher-order Abstract Syntax and Explicit Substitutions

  • Authors:
  • Brigitte Pientka

  • Affiliations:
  • School of Computer Science, McGill University, Montreal, Canada

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper sketches a foundation for programming with higher-order abstract syntax and explicit substitutions based on contextual modal type theory [Aleksandar Nanevski, Frank Pfenning, and Brigitte Pientka. Contextual modal type theory. submitted, 2005]. Contextual modal types not only allows us to cleanly separate the representation of data objects from computation, but allow us to recurse over data objects with free variables. In this paper, we extend these ideas even further by adding first-class contexts and substitutions so that a program can pass and access code with free variables and an explicit environment, and link them in a type-safe manner. We sketch the static and operational semantics of this language, and give several examples which illustrate these features.