Powered by OpenAIRE graph
Found an issue? Give us feedback
image/svg+xml art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos Open Access logo, converted into svg, designed by PLoS. This version with transparent background. http://commons.wikimedia.org/wiki/File:Open_Access_logo_PLoS_white.svg art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos http://www.plos.org/ Explore Bristol Rese...arrow_drop_down
image/svg+xml art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos Open Access logo, converted into svg, designed by PLoS. This version with transparent background. http://commons.wikimedia.org/wiki/File:Open_Access_logo_PLoS_white.svg art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos http://www.plos.org/
Explore Bristol Research
Contribution for newspaper or weekly magazine . 2022
image/svg+xml art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos Open Access logo, converted into svg, designed by PLoS. This version with transparent background. http://commons.wikimedia.org/wiki/File:Open_Access_logo_PLoS_white.svg art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos http://www.plos.org/
versions View all 1 versions
addClaim

This Research product is the result of merged Research products in OpenAIRE.

You have already added 0 works in your ORCID record related to the merged Research product.

CircuitFlow:A Domain Specific Language for Dataflow Programming

Authors: Frohlich, Samantha; Wang, Meng; Evans, Riley;

CircuitFlow:A Domain Specific Language for Dataflow Programming

Abstract

Dataflow applications, such as machine learning algorithms,can run for days, making it desirable to have assurances that they willwork correctly. Current tools are not good enough: too often the interactions between tasks are not type-safe, leading to undesirable runtimeerrors. This paper presents a new declarative Haskell Embedded DSL(eDSL) for dataflow programming: CircuitFlow. Defined as a Symmetric Monoidal Preorder (SMP) on data that models dependencies in theworkflow, it has a strong mathematical basis, refocusing on how dataflows through an application, resulting in a more expressive solutionthat not only catches errors statically, but also achieves competitive runtime performance. In our preliminary evaluation, CircuitFlow outperformsthe industry-leading Luigi library of Spotify by scaling better with thenumber of inputs. The innovative creation of CircuitFlow is also of note,exemplifying how to create a modular eDSL whose semantics necessitates effects, and where storing complex type information for programcorrectness is paramount.

Related Organizations
Keywords

eDSL, Haskell, /dk/atira/pure/core/keywords/programming_languages, Dataflow programming, name=Programming Languages, /dk/atira/pure/core/keywords/programming_languages; name=Programming Languages, Domain-specific languages, 004

  • BIP!
    Impact byBIP!
    selected citations
    These citations are derived from selected sources.
    This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    0
    popularity
    This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
    Average
    influence
    This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    Average
    impulse
    This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
    Average
Powered by OpenAIRE graph
Found an issue? Give us feedback
selected citations
These citations are derived from selected sources.
This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Citations provided by BIP!
popularity
This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
BIP!Popularity provided by BIP!
influence
This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Influence provided by BIP!
impulse
This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
BIP!Impulse provided by BIP!
0
Average
Average
Average
Green