Modular Transformation of Java']Java Exceptions Modulo Errors

被引:2
|
作者
Rubbens, Robert [1 ]
Lathouwers, Sophie [1 ]
Huisman, Marieke [1 ]
机构
[1] Univ Twente, Formal Methods & Tools, Enschede, Netherlands
关键词
Deductive verification; !text type='Java']Java[!/text; VerCors; Exceptions; Finally; Errors;
D O I
10.1007/978-3-030-85248-1_5
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
Deductive verifiers are used more and more in both academia and industry to prevent costly bugs. Their capabilities of verifying concurrent programs are getting better, but they are still lagging behind with regard to many major programming language features such as exceptions. To improve the situation, this work presents a semantics of Java exceptions which reduces the annotation burden on the user, while still allowing verification of exceptions. This is accomplished by ignoring sources of errors which are irrelevant to functional verification. Additionally, to deal with the complex control flow introduced by finally, a transformation is proposed that simplifies verification of exceptional postconditions and finally into postconditions and goto. We implement the approach and evaluate it against several common exception patterns.
引用
收藏
页码:67 / 84
页数:18
相关论文
共 50 条
  • [1] Students' Misconceptions of Java']Java Exceptions
    Rashkovits, Rami
    Lavy, Ilana
    KNOWLEDGE AND TECHNOLOGIES IN INNOVATIVE INFORMATION SYSTEMS, 2012, 129 : 1 - 21
  • [2] A core calculus for Java']Java exceptions
    Ancona, D
    Lagorio, G
    Zucca, E
    ACM SIGPLAN NOTICES, 2001, 36 (11) : 16 - 30
  • [3] Better performance with exceptions in Java']Java
    Orchard, D
    BYTE, 1998, 23 (03): : 53 - 54
  • [4] Exercising Java']Java Exceptions Using Java']Java Pathfinder and Program Instrumentation
    Martins, Alexandre Locci
    Hanazumi, Simone
    de Melo, Ana C. V.
    COMPUTATIONAL SCIENCE AND ITS APPLICATIONS - ICCSA 2014, PT 1, 2014, 8579 : 671 - 682
  • [5] Testing Java']Java Exceptions: an instrumentation technique
    Martins, Alexandre L.
    Hanazumi, Simone
    de Melo, Ana C. V.
    2014 38TH ANNUAL IEEE INTERNATIONAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE WORKSHOPS (COMPSACW 2014), 2014, : 626 - 631
  • [6] Optimizing Java']Java programs in the presence of exceptions
    Gupta, M
    Choi, JD
    Hind, M
    ECOOP 2000 - OBJECT-ORIENTED PROGRAMMING, 2000, 1850 : 422 - 446
  • [7] import java.*: Understanding Java exceptions
    C/C++ Users Journal, 2001, 19 (4 SUPPL.):
  • [8] A deductive proof system for multithreaded Java']Java with exceptions
    Abraham, Erika
    de Roever, Willem-Paul
    de Boer, Frank S.
    Steffen, Martin
    FUNDAMENTA INFORMATICAE, 2008, 82 (04) : 391 - 463
  • [9] Students' Understanding of Advanced Properties of Java']Java Exceptions
    Rashkovits, Rami
    Lavy, Liana
    JOURNAL OF INFORMATION TECHNOLOGY EDUCATION-INNOVATIONS IN PRACTICE, 2012, 11 : 327 - 352
  • [10] Slicing Java']Java programs that throw and catch exceptions
    Allen, M
    Horwitz, S
    ACM SIGPLAN NOTICES, 2003, 38 (10) : 284 - 294