FlowSpec: Declarative Dataflow Analysis Specification

Jeff Smits, Eelco Visser

Research output: Chapter in Book/Conference proceedings/Edited volumeConference contributionScientificpeer-review

6 Citations (Scopus)


We present FlowSpec, a declarative specification language for the domain of dataflow analysis. FlowSpec has declarative support for the specification of control flow graphs of programming languages, and dataflow analyses on these control flow graphs. We define the formal semantics of FlowSpec, which is rooted in Monotone Frameworks. We also discuss a prototype implementation of the language, built in the Spoofax Language Workbench. Finally, we evaluate the expressiveness and conciseness of the language with two case studies. These case studies are performed using Green-Marl, an industrial, domain-specific language for graph processing. The first case study is a classical dataflow analysis, scaled to this full language. The second case study is a domain-specific analysis of Green-Marl.
Original languageEnglish
Title of host publicationSLE 2017 Proceedings of the 10th ACM SIGPLAN International Conference on Software Language Engineering
EditorsBenoit Combemale, Marjan Mernik, Bernhard Rumpe
Place of PublicationNew York
PublisherAssociation for Computing Machinery (ACM)
Number of pages11
ISBN (Electronic)978-1-4503-5525-4
Publication statusPublished - Oct 2017
EventSLE 2017: The 10th ACM SIGPLAN International Conference on Software Language Engineering - Vancouver, Canada
Duration: 23 Oct 201724 Oct 2017


ConferenceSLE 2017


  • control flow graph
  • Data-flow Analysis
  • Domain specific language
  • Spoofax


Dive into the research topics of 'FlowSpec: Declarative Dataflow Analysis Specification'. Together they form a unique fingerprint.

Cite this