Improving Robustness via Disjunctive Statements in Imperative Programming
Keehang Kwon, Sungwoo Hur, and Mi-Young Park

TL;DR
This paper introduces a new logical foundation for core C programming, incorporating sequential-disjunctive statements that enhance robustness by handling errors without explicit catching, based on a novel imperative logic.
Contribution
It proposes a new logic called task logic for core C and introduces sequential-disjunctive statements to improve error handling and robustness.
Findings
Sequential-disjunctive statements execute S and R sequentially.
The statement succeeds if at least one of S or R succeeds.
This approach simplifies handling inessential errors without explicit catch blocks.
Abstract
To deal with failures as simply as possible, we propose a new foun- dation for the core (untyped) C, which is based on a new logic called task logic or imperative logic. We then introduce a sequential-disjunctive statement of the form S : R. This statement has the following semantics: execute S and R sequentially. It is considered a success if at least one of S;R is a success. This statement is useful for dealing with inessential errors without explicitly catching them.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
