Reactive programming and event-based programming are two closely related programming styles that are becoming ever more important with the advent of advanced HPC technology and the ever increasing requirement for our applications to run on the web or on collaborating mobile devices. A number of publications on middleware and language design — so-called reactive and event-based languages and systems (REBLS) — have already seen the light, but the field still raises several questions. For example, the interaction with mainstream language concepts is poorly understood, implementation technology is in its infancy and modularity mechanisms are almost totally lacking. Moreover, large applications are still to be developed and patterns and tools for developing reactive applications is an area that is vastly unexplored.

This workshop will gather researchers in reactive and event-based languages and systems. The goal of the workshop is to exchange new technical research results and to define better the field by coming up with taxonomies and overviews of the existing work.

Accepted Papers

Title
Pre-print
Pre-print

Call for Papers

Even though reactive programming and event-based programming are receiving ever more attention, the field is far from mature. This workshop will join forces and try to gather researchers working on the foundational models, languages and implementation technologies. We welcome all submissions on reactive programming, aspect- and event-oriented systems, including but not limited to:

  • Language design, implementation, runtime systems, program analysis, software metrics, patterns and benchmarks.
  • Study of the paradigm: interaction of reactive and event-based programming with existing language features such as object-oriented programming, mutable state, concurrency.
  • Advanced event systems, event quantification, event composition, aspect-oriented programming for reactive applications.
  • Functional-reactive programming, self-adjusting computation and incremental computing.
  • Synchronous languages, modeling real-time systems, safety-critical reactive and embedded systems.
  • Applications, case studies that show the efficacy of reactive programming.
  • Empirical studies that motivate further research in the field.
  • Patterns and best-practices.
  • Related fields, such as complex event processing, reactive data structures, view maintenance, constraint-based languages, and their integration with reactive programming. IDEs, Tools.
  • Implementation technology, language runtimes, virtual machine support, compilers.
  • Modularity and abstraction mechanisms in large systems.
  • Formal models for reactive and event-based programming.

The format of the workshop is that of a mini-conference. Participants can present their work in slots of 30 mins with Q&A included. Because of the declarative nature of reactive programs, it is often hard to understand their semantics just by looking at the code. We therefore also encourage authors to use their slots for presenting their work based on live demos.

Submissions

REBLS encourages submissions of two types of papers:

  • Research results: complete works that will be published in the ACM digital library.
  • In progress papers: papers that have the potential of triggering an interesting discussion at the workshop or present new ideas that require further systematic investigation. These papers will not be published in the ACM digital library.

Format:

  • Submissions should be formatted according to the instructions for the authors below.
  • Full papers can be up to 10 pages in length including references.
  • In progress papers can be up to 6 pages.
  • Authors are required to explicitly specify the type of paper in the submission.

Instructions for the Authors:

For fairness reasons, all submitted papers should conform to the formatting instructions. Submissions that violate these instructions may be rejected without review.

Submission Site

Please take a moment to read the instructions below before using the submission site.

Concurrent Submissions

Papers must describe unpublished work that is not currently submitted for publication elsewhere as described by SIGPLAN’s Republication Policy. Submitters should also be aware of ACM’s Policy and Procedures on Plagiarism.

Format

Submissions should use the ACM SIGPLAN Conference acmart Format with sigplan Subformat, 10 point font, using Biolinum as sans-serif font and Libertine as serif font. All submissions should be in PDF format. If you use LaTeX or Word, please use the provided ACM SIGPLAN acmart Templates provided here. Otherwise, follow the author instructions.

If you are formatting your paper using LaTeX, you will need to set the 10pt option in the \documentclass command. If you are formatting your paper using Word, you may wish to use the provided Word template that supports this font size. Please include page numbers in your submission with the LaTeX \settopmatter{printfolios=true} command. Please also ensure that your submission is legible when printed on a black and white printer. In particular, please check that colors remain distinct and font sizes are legible.

Publication (Digital Library Early Access Warning)

AUTHORS TAKE NOTE: The official publication date is the date the proceedings are made available in the ACM Digital Library. This date may be up to two weeks prior to the first day of the conference. The official publication date affects the deadline for any patent filings related to published work.

Sun 4 Nov

rebls-2018-papers
09:00 - 10:00: REBLS 2018 - Keynote at Longfellow
rebls-2018-papers154131840000009:00 - 09:15
Day opening
Guido SalvaneschiTU Darmstadt, Wolfgang De MeuterVrije Universiteit Brussel
rebls-2018-papers154131930000009:15 - 10:00
Talk
rebls-2018-papers
10:30 - 12:00: REBLS 2018 - Embedded Systems and IoT / Multitier and Distributed Systems at Longfellow
rebls-2018-papers154132380000010:30 - 10:52
Talk
Francisco Sant'AnnaRio de Janeiro State University, Alexandre SztajnbergRio de Janeiro State University
rebls-2018-papers154132515000010:52 - 11:15
Talk
Steven SmythKiel University, Christian MotikaPhilotech Systementwicklung und Software GmbH, Reinhard von HanxledenKiel University
rebls-2018-papers154132650000011:15 - 11:37
Talk
Orestis MelkonianUniversity of Utrecht, Angelos CharalambidisNCSR "Demokritos''
rebls-2018-papers154132785000011:37 - 12:00
Talk
Guillaume BaudartIBM Research, Martin HirzelIBM Research, Louis MandelIBM Research, Avraham ShinnarIBM Research, Jerome SimeonClause
rebls-2018-papers
13:30 - 15:00: REBLS 2018 - Multitier and Distributed Computing at Longfellow
rebls-2018-papers154133460000013:30 - 13:52
Talk
Jesse ZamanVrije Universiteit Brussel, Kennedy KambonaVrije Universiteit Brussel, Wolfgang De MeuterVrije Universiteit Brussel
rebls-2018-papers154133595000013:52 - 14:15
Talk
Pascal WeisenburgerTechnische Universität Darmstadt, Guido SalvaneschiTU Darmstadt
rebls-2018-papers154133730000014:15 - 14:37
Talk
Joscha DrechslerTechnische Universität Darmstadt, Mira MeziniTU Darmstadt
Pre-print
rebls-2018-papers154133865000014:37 - 15:00
Talk
Mathijs SaeyVrije Universiteit Brussel, Joeri De KosterVrije Universiteit Brussel, Belgium, Wolfgang De MeuterVrije Universiteit Brussel
Pre-print
rebls-2018-papers
15:30 - 17:00: REBLS 2018 - Visualization, Debugging, and Programming Techniques at Longfellow
rebls-2018-papers154134180000015:30 - 15:52
Talk
rebls-2018-papers154134315000015:52 - 16:15
Talk
Bjarno OeyenVrije Universiteit Brussel, Humberto Rodriguez AvilaVrije Universiteit Brussel, Sam Van den Vonder, Wolfgang De MeuterVrije Universiteit Brussel
rebls-2018-papers154134450000016:15 - 16:37
Talk
Guillaume BaudartIBM Research, Louis MandelIBM Research, Olivier TardieuIBM Research, Mandana VaziriIBM Research
rebls-2018-papers154134585000016:37 - 17:00
Talk
Takumi HikosakaRitsumeikan University, Tetsuo KaminaOita University, Katsuhisa MaruyamaRitsumeikan University

Title: Reacting to stream-based programming bugs

Speaker: Murali Krishna Ramanathan

Abstract: In stream-based programming, data sources are abstracted as a stream of values that can be manipulated via callback functions, and at Uber, our mobile apps leverage the strengths of this programming model. Even though this provides a powerful and expressive paradigm for handling asynchronous data sources in interactive software, high-level stream abstractions can also make it difficult for developers to reason about control and data-flow relationships in their programs.

In this talk, I will present our experiences with mitigating the bugs arising out of stream-based programming. Firstly, I will present the design and implementation of a type-based approach that can statically prove the thread-safety of UI accesses in stream-based software and will report our experience applying the checker to two Uber apps, where it currently runs on every code change and blocks changes that introduce potential threading bugs. Secondly, I will describe our efforts in addressing concerns pertaining to RxJava back-pressure and will share our best practices for negating it.

Bio: Murali Krishna Ramanathan is a member of the Programming Systems group at Uber Technologies, USA. He works on design and implementation of program analysis tools directed towards improving the quality and performance of Uber applications. Previously, he was a member of the core analysis team at Coverity and built program analysis tools that are widely used in the software industry. He is a recipient of the Google faculty research award and ACM SIGSOFT Distinguished paper award (ISSTA 16). He holds a PhD in Computer Science from Purdue University, USA.