Proceedings of the 33rd ACM SIGPLAN Conference on Programming Language Design and Implementation 2012
DOI: 10.1145/2254064.2254099
|View full text |Cite
|
Sign up to set email alerts
|

Self-stabilizing Java

Abstract: Self-stabilizing programs automatically recover from state corruption caused by software bugs and other sources to reach the correct state. A number of applications are inherently self-stabilizingsuch programs typically overwrite all non-constant data with new input data. We present a type system and static analyses that together check whether a program is self-stabilizing. We combine this with a code generation strategy that ensures that a program continues executing long enough to self-stabilize. Our experie… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
7
0

Year Published

2013
2013
2015
2015

Publication Types

Select...
3
3

Relationship

1
5

Authors

Journals

citations
Cited by 15 publications
(7 citation statements)
references
References 25 publications
0
7
0
Order By: Relevance
“…Unlike these tools, the goal of RCV is to repair the execution of the application, not the source code -continued execution with RCV can reduce or eliminate data losses in running applications. Self-Stabilizing Java: SJava [12] is a Java type system that enables the compiler to prove that the effects of any error will be flushed from the system state after a fixed number of iterations. Input Rectification and Filtering: Input rectification [18] empirically learns a set of input constraints from benign training inputs, then enforces learned constraints on incoming inputs to nullify potential errors.…”
Section: Related Workmentioning
confidence: 99%
“…Unlike these tools, the goal of RCV is to repair the execution of the application, not the source code -continued execution with RCV can reduce or eliminate data losses in running applications. Self-Stabilizing Java: SJava [12] is a Java type system that enables the compiler to prove that the effects of any error will be flushed from the system state after a fixed number of iterations. Input Rectification and Filtering: Input rectification [18] empirically learns a set of input constraints from benign training inputs, then enforces learned constraints on incoming inputs to nullify potential errors.…”
Section: Related Workmentioning
confidence: 99%
“…SJava [23] is a Java type system that exploits common iterative structures in applications. When a developer writes program in SJava, the compiler can prove that the effects of any error will be flushed from the system state after a fixed number of iterations.…”
Section: Related Workmentioning
confidence: 99%
“…Background on SJava This section reviews the key ideas behind checking selfstabilization [8]. The two key ideas are: (1) to use a type system to arrange the program's state into a lattice of locations and then check that information only flows down this lattice and (2) bound how long information can remain at any given location in the lattice before it is evicted.…”
Section: Contributionsmentioning
confidence: 99%
“…This earlier work does not check that the actual application is self-stabilizing. SJava is a type system and static analyses that together check that a Java program is self-stabilizing [8]. A barrier to the adoption of this work is that the technique requires additional type annotations.…”
Section: Robot Controllermentioning
confidence: 99%
See 1 more Smart Citation