Porgy Strategy Language: User Manual

Abstract : This document provides the specification of Porgy's strategy language: concrete syntax illustrated with examples. Porgy is a visual, interactive modelling tool based on port graph rewriting. In Porgy, system states are represented by port graphs, and the dynamic evolution of the system is defined via port graph rewrite rules. Strategy expressions are used to control the application of rules, more precisely, strategy expressions indicate both the rule to be applied at each step in a rewriting derivation, and the position in the graph where the rule is applied (the latter is done via focusing constructs). Some of the strategy constructs are strongly inspired from term rewriting languages such as Elan [Borovansk´yBorovansk´y et al., 1998], Stratego [Visser, 2001] and Tom [Balland et al., 2007]. Focusing operators are not present in term rewriting languages (although they rely on implicit traversal strategies). The direct management of positions in strategy expressions, via the distinguished position and banned subgraphs in the target graph and in a located port graph rewrite rule are original features of the language and are managed using positioning constructs. This document describes the concrete syntax of strategy expressions, explains how the different kinds of constructs are used, and provides examples.
Document type :
Complete list of metadatas

Cited literature [5 references]  Display  Hide  Download

Contributor : Bruno Pinaud <>
Submitted on : Wednesday, July 25, 2018 - 1:04:39 PM
Last modification on : Thursday, October 18, 2018 - 10:07:04 AM


Files produced by the author(s)


  • HAL Id : hal-01566525, version 2


Maribel Fernández, Hélène Kirchner, Bruno Pinaud, Jason Vallet. Porgy Strategy Language: User Manual. [Research Report] Université de Bordeaux, LaBRI; Inria Bordeaux Sud-Ouest; King's College London. 2018. ⟨hal-01566525v2⟩



Record views


Files downloads