Cookies
O website necessita de alguns cookies e outros recursos semelhantes para funcionar. Caso o permita, o INESC TEC irá utilizar cookies para recolher dados sobre as suas visitas, contribuindo, assim, para estatísticas agregadas que permitem melhorar o nosso serviço. Ver mais
Aceitar Rejeitar
  • Menu
Publicações

Publicações por João Alexandre Saraiva

2022

Zipping Strategies and Attribute Grammars

Autores
Macedo, JN; Viera, M; Saraiva, J;

Publicação
FLOPS

Abstract
Strategic term rewriting and attribute grammars are two powerful programming techniques widely used in language engineering. The former relies on strategies (recursion schemes) to apply term rewrite rules in defining transformations, while the latter is suitable for expressing context-dependent language processing algorithms. Each of these techniques, however, is usually implemented by its own powerful and large processor system. As a result, it makes such systems harder to extend and to combine. We present the embedding of both strategic tree rewriting and attribute grammars in a zipper-based, purely functional setting. The embedding of the two techniques in the same setting has several advantages: First, we easily combine/zip attribute grammars and strategies, thus providing language engineers the best of the two worlds. Second, the combined embedding is easier to maintain and extend since it is written in a concise and uniform setting. We show the expressive power of our library in optimizing Haskell let expressions, expressing several Haskell refactorings and solving several language processing tasks for an Oberon-0 compiler.

2021

Green Software Lab: Towards an Engineering Discipline for Green Software

Autores
Abreu, R; Couto, M; Cruz, L; Cunha, J; Fernandes, JP; Pereira, R; Perez, A; Saraiva, J;

Publicação
CoRR

Abstract

2017

Tabula: A Language to Model Spreadsheet Tables

Autores
Mendes, J; Saraiva, J;

Publicação
CoRR

Abstract

2025

pyZtrategic

Autores
Rodrigues, E; Macedo, JN; Saraiva, J;

Publicação

Abstract

  • 28
  • 28