2013
DOI: 10.1007/978-3-642-39038-8_8
|View full text |Cite
|
Sign up to set email alerts
|

Java UI : Effects for Controlling UI Object Access

Abstract: Abstract. Most graphical user interface (GUI) libraries forbid accessing UI elements from threads other than the UI event loop thread. Violating this requirement leads to a program crash or an inconsistent UI. Unfortunately, such errors are all too common in GUI programs. We present a polymorphic type and effect system that prevents non-UI threads from accessing UI objects or invoking UI-thread-only methods. The type system still permits non-UI threads to hold and pass references to UI objects. We implemented … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
37
0

Year Published

2013
2013
2023
2023

Publication Types

Select...
2
2
1

Relationship

2
3

Authors

Journals

citations
Cited by 23 publications
(37 citation statements)
references
References 21 publications
0
37
0
Order By: Relevance
“…Qualifier systems have been developed in these frameworks for checking software properties such as null safety [8], [33], tainting [8], [33], format strings [35], [44], internationalization [33], regular expressions [36], UI threading [17], ownership [20], and immutability [21], [33], [40], [46].…”
Section: Type Qualifiersmentioning
confidence: 99%
See 1 more Smart Citation
“…Qualifier systems have been developed in these frameworks for checking software properties such as null safety [8], [33], tainting [8], [33], format strings [35], [44], internationalization [33], regular expressions [36], UI threading [17], ownership [20], and immutability [21], [33], [40], [46].…”
Section: Type Qualifiersmentioning
confidence: 99%
“…Researchers have developed many qualifier systems to check software properties such as concurrency [17], ownership [20], [39], immutability [21], [40], safety against null dereferences [8], [33], and security [8], [16], [33], [35], [44]. Java 8 supports the syntactic features required by qualifier systems [2].…”
Section: Introductionmentioning
confidence: 99%
“…In addition, one is limited by the fact that the checker is conservative. Recently, several practical effect systems have been applied to existing libraries, and the empirical findings highlight the need to occasionally bypass static effect checking [12,17].…”
Section: Towards Gradual Effect Checkingmentioning
confidence: 99%
“…For instance, the JavaUI effect system [12], which prevents non-UI threads from accessing UI objects or invoking UI-threadonly methods, cannot be used to verify libraries that dynamically check which thread they are running on and adapt their behavior accordingly. As explained by the authors, the patterns of dynamic checks they found in existing code go beyond simple if-then-else statements and so cannot be handled simply by specializing the static type system.…”
Section: Towards Gradual Effect Checkingmentioning
confidence: 99%
See 1 more Smart Citation