Print Email Facebook Twitter Solving the Overproduction Problem in Reactive Programming using Feedback Control Title Solving the Overproduction Problem in Reactive Programming using Feedback Control Author Van Heest, R. Contributor Meijer, H.J.M. (mentor) Faculty Electrical Engineering, Mathematics and Computer Science Department Software Technology Programme Software Engineering Research Group Date 2016-12-16 Abstract In an interactive program the consumer requests data from the producer and therefore has control over the speed at which data is consumed. This is opposite to a reactive program, where the producer emits data to the consumer at its own pace. This forms a problem if the producer emits more data than the consumer can deal with. Solving this 'overproduction' problem requires a good understanding of the nature of a reactive program, as well as the various behaviors it can have. Several solutions have been proposed and implemented, though they turn out to not work under all circumstances. We classify these solutions based on the type of reactive programs they can be applied to. We further develop a new solution for the case in which the producer can actually be controlled. Our solution involves the notion of feedback control, which is a technique that is not well-known in computer science. For this technique to be applied, we develop an API to compose and execute feedback systems in production level systems. Based on this API we develop our solution to the overproduction problem. Subject feedback control systemsfeedback controlfeedback systemreactive programmingreactive extensionsRxJavaRxScalaRxoverproductionoverproduction problembackpressure To reference this document use: http://resolver.tudelft.nl/uuid:ebba15d9-71ac-42c3-89f7-221c6604828c Related item http://doi.org/10.5281/zenodo.169095 Part of collection Student theses Document type master thesis Rights (c) 2016 Heest, R. van Files PDF heest report.pdf 1.52 MB Close viewer /islandora/object/uuid:ebba15d9-71ac-42c3-89f7-221c6604828c/datastream/OBJ/view