Capítulo de livro Revisado por pares

GRAPE – A Graph Rewriting and Persistence Engine

2017; Springer Science+Business Media; Linguagem: Inglês

10.1007/978-3-319-61470-0_13

ISSN

1611-3349

Autores

Jens H. Weber,

Tópico(s)

Advanced Software Engineering Methodologies

Resumo

Graph-based data structures are fundamental to many applications in Computer Science and Software Engineering. Operations on graphs can be formalized as graph transformations or graph rewriting rules and a rich theoretical underpinning has been developed in the research community that supports reasoning about the properties of graph transformation systems. Various tools exist for developing graph transformations, including visual editors as well as textual languages that can be integrated with general purpose programming languages. This paper introduces Grape (Graph Rewriting and Persistence Engine), a hybrid, embedded Domain Specific Language (DSL) for Clojure. Grape is a lightweight approach to computing with persistent graphs within Clojure. It combines the ease of use of a textual DSL with a graphical visualization that is inlined with the program code when needed to aid comprehension and documentation of graph rewriting rules. Moreover, Grape supports persistence, programmed transactions and backtracking.

Referência(s)