Memoized zipper-based attribute grammars and their higher order extension

Attribute grammars are a powerfull, well-known formalism to implement and reason about programs which, by design, are conveniently modular. In this work we focus on a state of the art zipper-based embedding of classic attribute grammars and higher-order attribute grammars. We improve their execution...

Full description

Bibliographic Details
Main Author: Fernandes, João Paulo (author)
Other Authors: Martins, Pedro (author), Pardo, Alberto (author), Saraiva, João (author), Viera, Marcos (author)
Format: article
Language:eng
Published: 2019
Subjects:
Online Access:http://hdl.handle.net/1822/68621
Country:Portugal
Oai:oai:repositorium.sdum.uminho.pt:1822/68621
Description
Summary:Attribute grammars are a powerfull, well-known formalism to implement and reason about programs which, by design, are conveniently modular. In this work we focus on a state of the art zipper-based embedding of classic attribute grammars and higher-order attribute grammars. We improve their execution performance through controlling attribute (re)evaluation by means of memoization techniques. We present the results of our optimizations by comparing their impact in various implementations of different, well-studied, attribute grammars and their Higher-Order extensions. (C) 2018 Elsevier B.V. All rights reserved.