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
StatePublished - Oct 2017
EventSLE 2017 - Vancouver, Canada


ConferenceSLE 2017

    Research areas

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

ID: 32950234