Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering 2014
DOI: 10.1145/2635868.2635895
|View full text |Cite
|
Sign up to set email alerts
|

An empirical study on program comprehension with reactive programming

Abstract: Starting from the first investigations with strictly functional languages, reactive programming has been proposed as THE programming paradigm for reactive applications. The advantages of designs based on this style over designs based on the Observer design pattern have been studied for a long time. Over the years, researchers have enriched reactive languages with more powerful abstractions, embedded these abstractions into mainstream languages -including object-oriented languages -and applied reactive programm… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
15
0
1

Year Published

2015
2015
2023
2023

Publication Types

Select...
6
3

Relationship

2
7

Authors

Journals

citations
Cited by 34 publications
(16 citation statements)
references
References 50 publications
0
15
0
1
Order By: Relevance
“…Intertwining in the same code the assembly of UI events to build user interactions and the transformation of UI events into commands makes the code more complex: it can lead to "spaghetti" code [6], [7] and can be affected by design smells [12]. Moreover, the UI process model strongly relies on the Observer pattern that suffers from several major flaws [8], [9], [10], [11]. This also makes the code more difficult to test.…”
Section: Limitations Of the Ui Event Processing Modelmentioning
confidence: 99%
“…Intertwining in the same code the assembly of UI events to build user interactions and the transformation of UI events into commands makes the code more complex: it can lead to "spaghetti" code [6], [7] and can be affected by design smells [12]. Moreover, the UI process model strongly relies on the Observer pattern that suffers from several major flaws [8], [9], [10], [11]. This also makes the code more difficult to test.…”
Section: Limitations Of the Ui Event Processing Modelmentioning
confidence: 99%
“…First, several different tasks can be performed to find out whether a participant has understood a program. Such tasks include answering comprehension-related questions [12,29], filling out blank program parts [8], or more advanced tasks, such as extending or modifying existing code or finding bugs [18].…”
Section: Source Code Understandabilitymentioning
confidence: 99%
“…Link latency is uniformly distributed between 1 ms and 5 ms. Clients can reach the lock manager within two network hops, on average. We assume that packet's processing time is negligible with respect to link latency 4 . We consider changes from ten vars propagating across a dependency graph of depth five, with an average of two nodes per level.…”
Section: Experiments Setupmentioning
confidence: 99%
“…Instead, they declare the dependencies between variables and entirely delegate the update process to the runtime. This results in more compact and readable code, and reduces the possibility of subtle errors [4], [5]. Most significantly, the runtime takes care of ensuring the correctness of the propagation.…”
Section: Introductionmentioning
confidence: 99%