[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/3281278.3281279acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
research-article

RHEA: a reactive, heterogeneous, extensible, and abstract framework for dataflow programming

Published: 04 November 2018 Publication History

Abstract

Robotics and IoT applications are perfect candidates that can benefit from the functional reactive programming paradigm. Moreover, since a typical program can be represented as a dataflow graph, the application can be conceptually separated and distributed in different machines and the several graph partitions can run in parallel and possibly in different execution stacks. In this paper we propose a general-purpose reactive framework that can express complex applications, seamlessly and transparently integrating different sources and middlewares. The framework is abstract and extensible, making it easy to integrate with well-established technologies that rely on the PubSub model. We demonstrate the usability of the framework by providing application examples in the domain of robotics and IoT.

References

[1]
Tyler Akidau, Robert Bradshaw, Craig Chambers, Slava Chernyak, Rafael Fernández-Moctezuma, Reuven Lax, Sam McVeety, Daniel Mills, Frances Perry, Eric Schmidt, and Sam Whittle. 2015. The Dataflow Model: A Practical Approach to Balancing Correctness, Latency, and Cost in Massive-Scale, Unbounded, Out-of-Order Data Processing. PVLDB 8, 12 (2015), 1792–1803.
[2]
Alexander Alexandrov, Rico Bergmann, Stephan Ewen, JohannChristoph Freytag, Fabian Hueske, Arvid Heise, Odej Kao, Marcus Leich, Ulf Leser, Volker Markl, Felix Naumann, Mathias Peters, Astrid Rheinlander, Matthias J. Sax, Sebastian Schelter, Mareike Hoger, Kostas Tzoumas, and Daniel Warneke. 2014. The Stratosphere platform for big data analytics. VLDB J. 23 (2014), 939–964.
[3]
Michael Blackstock and Rodger Lea. 2014. Toward a Distributed Data Flow Platform for the Web of Things. In 5th International Workshop on the Web of Things (WoT).
[4]
Craig Chambers, Ashish Raniwala, Frances Perry, Stephen Adams, Robert R Henry, Robert Bradshaw, and Nathan Weizenbaum. 2010. FlumeJava: easy, efficient data-parallel pipelines. In ACM Sigplan Notices, Vol. 45. ACM, 363–375.
[5]
Anthony Cowley and Camillo J Taylor. 2011. Stream-oriented robotics programming: The design of roshask. In Intelligent Robots and Systems (IROS), 2011 IEEE/RSJ International Conference on. IEEE, 1048–1054.
[6]
Conal Elliott and Paul Hudak. 1997. Functional reactive animation. In ACM SIGPLAN Notices, Vol. 32. ACM, 263–273.
[7]
Rosa Filguiera, Amrey Krause, Malcolm P. Atkinson, Iraklis A. Klampanos, and Alexander Moreno. 2017. dispel4py. IJHPCA 31, 4 (2017), 316–334.
[8]
Paul Hudak, Antony Courtney, Henrik Nilsson, and John Peterson. 2003. Arrows, robots, and functional reactive programming. In Advanced Functional Programming. Springer, 159–187.
[9]
Fabian Hueske, Mathias Peters, Matthias J Sax, Astrid Rheinländer, Rico Bergmann, Aljoscha Krettek, and Kostas Tzoumas. 2012. Opening the black boxes in data flow optimization. Proceedings of the VLDB Endowment 5, 11 (2012), 1256–1267.
[10]
Oleg Kiselyov, Aggelos Biboudis, Nick Palladinos, and Yannis Smaragdakis. 2017. Stream fusion, to completeness. In ACM SIGPLAN Notices, Vol. 52. ACM, 285–299.
[11]
Ben Lippmeier, Manuel MT Chakravarty, Gabriele Keller, and Amos Robinson. 2013. Data flow fusion with series expressions in Haskell. In ACM SIGPLAN Notices, Vol. 48. ACM, 93–104.
[12]
Dave Locke. 2010. Mq telemetry transport (mqtt) v3. 1 protocol specification. IBM developerWorks Technical Library}, available at http://www. ibm. com/developerworks/webservices/library/wsmqtt/index. html (2010).
[13]
Azalia Mirhoseini, Hieu Pham, Quoc V. Le, Benoit Steiner, Rasmus Larsen, Yuefeng Zhou, Naveen Kumar, Mohammad Norouzi, Samy Bengio, and Jeff Dean. 2017. Device Placement Optimization with Reinforcement Learning. In Proceedings of the 34th International Conference on Machine Learning, ICML 2017, Sydney, NSW, Australia, 6-11 August 2017. 2430–2439.
[14]
Koosha Paridel, Engineer Bainomugisha, Yves Vanrompay, Yolande Berbers, and Wolfgang De Meuter. 2010. Middleware for the internet of things, design goals and challenges. Electronic Communications of the EASST 28 (2010).
[15]
John Peterson, Paul Hudak, and Conal Elliott. 1999. Lambda in motion: Controlling robots with Haskell. In Practical Aspects of Declarative Languages. Springer, 91–105.
[16]
Morgan Quigley, Ken Conley, Brian Gerkey, Josh Faust, Tully Foote, Jeremy Leibs, Rob Wheeler, and Andrew Y Ng. 2009. ROS: an opensource Robot Operating System. In ICRA workshop on open source software, Vol. 3. 5.
[17]
Gordon Stewart, Mahanth Gowda, Geoffrey Mainland, Bozidar Radunovic, Dimitrios Vytiniotis, and Cristina Luengo Agulló. 2015. Ziria: A DSL for wireless systems programming. In Proceedings of the Twentieth International Conference on Architectural Support for Programming Languages and Operating Systems. ACM, 415–428.
[18]
Edward A. Ashcroft William W. Wadge. 1985. Lucid, the Dataflow Programming Language. Academic Press.
[19]
Matei Zaharia, Mosharaf Chowdhury, Tathagata Das, Ankur Dave, Justin Ma, Murphy McCauly, Michael J. Franklin, Scott Shenker, and Ion Stoica. 2012. Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing. In Proceedings of the 9th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2012, San Jose, CA, USA, April 25-27, 2012, Steven D. Gribble and Dina Katabi (Eds.). USENIX Association, 15–28.

Cited By

View all
  • (2022)On Embedding a Dataflow Architecture in a Multi-Robot System2022 Sixth IEEE International Conference on Robotic Computing (IRC)10.1109/IRC55401.2022.00052(271-276)Online publication date: Dec-2022
  • (2021)A survey of Model Driven Engineering in roboticsJournal of Computer Languages10.1016/j.cola.2020.10102162(101021)Online publication date: Feb-2021

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
REBLS 2018: Proceedings of the 5th ACM SIGPLAN International Workshop on Reactive and Event-Based Languages and Systems
November 2018
70 pages
ISBN:9781450360708
DOI:10.1145/3281278
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 04 November 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. dataflow programming
  2. declarative languages
  3. functional reactive programming (FRP)
  4. implicit concurrency
  5. node placement
  6. stream processing

Qualifiers

  • Research-article

Conference

SPLASH '18
Sponsor:

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)5
  • Downloads (Last 6 weeks)0
Reflects downloads up to 12 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2022)On Embedding a Dataflow Architecture in a Multi-Robot System2022 Sixth IEEE International Conference on Robotic Computing (IRC)10.1109/IRC55401.2022.00052(271-276)Online publication date: Dec-2022
  • (2021)A survey of Model Driven Engineering in roboticsJournal of Computer Languages10.1016/j.cola.2020.10102162(101021)Online publication date: Feb-2021

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media