Bak, Christopher Peter and Plump, Detlef orcid.org/0000-0002-1148-822X (2016) Compiling Graph Programs to C. In: Echahed, Rachid and Minas, Mark, (eds.) Proceedings 9th International Conference on Graph Transformation (ICGT 2016). 9th International Conference on Graph Transformation (ICGT 2016), 05-06 Jul 2016 Lecture Notes in Computer Science . Springer , AUT , pp. 102-117.
Abstract
We show how to generate efficient C code for a high-level domain-specific language for graphs. The experimental language GP 2 is based on graph transformation rules and aims to facilitate formal reasoning on programs. Implementing graph programs is challenging because rule matching is expensive in general. GP 2 addresses this problem by providing rooted rules which under mild conditions can be matched in constant time. Using a search plan, our compiler generates C code for matching rooted graph transformation rules. We present run-time experiments with our implementation in a case study on checking graphs for two-colourability: on grid graphs of up to 100,000 nodes, the compiled GP 2 program is as fast as the tailor-made C program given by Sedgewick.
Metadata
Item Type: | Proceedings Paper |
---|---|
Authors/Creators: |
|
Editors: |
|
Copyright, Publisher and Additional Information: | © C. Bak, G. Faulkner, D. Plump & C. Runciman. This is an author-produced version of the published article. Uploaded in accordance with the publisher’s self-archiving policy. Further copying may not be permitted; contact the publisher for details. |
Dates: |
|
Institution: | The University of York |
Academic Units: | The University of York > Faculty of Sciences (York) > Computer Science (York) |
Depositing User: | Pure (York) |
Date Deposited: | 18 Jan 2018 14:10 |
Last Modified: | 21 Jan 2025 18:22 |
Published Version: | https://doi.org/10.1007/978-3-319-40530-8_7 |
Status: | Published |
Publisher: | Springer |
Series Name: | Lecture Notes in Computer Science |
Identification Number: | 10.1007/978-3-319-40530-8_7 |
Related URLs: | |
Open Archives Initiative ID (OAI ID): | oai:eprints.whiterose.ac.uk:126396 |