Dependently Typed Attribute Grammars

Publication date

2011

Authors

Middelkoop, A.ISNI 0000000387305618
Dijkstra, A.ISNI 0000000353726385
Swierstra, S.D.ISNI 0000000052441415

Editors

Advisors

Supervisors

Document Type

Part of book
Open Access logo

License

Abstract

Attribute Grammars (AGs) are a domain-specific language for functional and composable descriptions of tree traversals. Given such a description, it is not immediately clear how to state and prove properties of AGs formally. To meet this challenge, we apply dependent types to AGs. In a dependently typed AG, the type of an attribute may refer to values of attributes. The type of an attribute is an invariant, the value of an attribute a proof for that invariant. Additionally, when an AG is cycle-free, the composition of the attributes is logically consistent. We present a lightweight approach using a preprocessor in combination with the dependently typed language Agda.

Keywords

International (English)

Citation

Middelkoop, A, Dijkstra, A & Swierstra, S D 2011, Dependently Typed Attribute Grammars. in IFL 2010. Springer, pp. 105–120. https://doi.org/10.1007/978-3-642-24276-2_7