On Multi-language Abstraction Towards a Static Analysis of Multi-language Programs

被引:4
作者
Buro, Samuele [1 ]
Crole, Roy L. [2 ]
Mastroeni, Isabella [1 ]
机构
[1] Univ Verona, Dept Comp Sci, Str Grazie 15, I-37134 Verona, Italy
[2] Univ Leicester, Dept Comp Sci, Univ Rd, Leicester LE1 7RH, Leics, England
来源
STATIC ANALYSIS (SAS 2020) | 2020年 / 12389卷
关键词
Multi-languages; Abstract interpretation; Interoperability; Algebraic semantics; SEMANTICS; ALGEBRA; SAFE;
D O I
10.1007/978-3-030-65474-0_14
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Modern software development rarely takes place within a single programming language. Often, programmers appeal to cross-language interoperability. Examples are exploitation of novel features of one language within another, and cross-language code reuse. Previous works developed a theory of so-called multi-languages, which arise by combining existing languages, defining a precise notion of (algebraic) multi-language semantics. As regards static analysis, the heterogeneity of the multi-language context opens up new and unexplored scenarios. In this paper, we provide a general theory for the combination of abstract interpretations of existing languages, regardless of their inherent nature, in order to gain an abstract semantics of multi-language programs. As a part of this general theory, we show that formal properties of interest of multi-language abstractions (e.g., soundness and completeness) boil down to the features of the interoperability mechanism that binds the underlying languages together. We extend many of the standard concepts of abstract interpretation to the framework of multi-languages.
引用
收藏
页码:310 / 332
页数:23
相关论文
共 42 条
  • [1] Ahmed A, 2011, ICFP 11 - PROCEEDINGS OF THE 2011 ACM SIGPLAN: INTERNATIONAL CONFERENCE ON FUNCTIONAL PROGRAMMING, P431
  • [2] On collecting semantics for program analysis
    Amato, Gianluca
    Meo, Maria Chiara
    Scozzari, Francesca
    [J]. THEORETICAL COMPUTER SCIENCE, 2020, 823 : 1 - 25
  • [3] Static Program Analysis for String Manipulation Languages
    Arceri, Vincenzo
    Mastroeni, Isabella
    [J]. ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2019, (299): : 19 - 33
  • [4] Approaches to interpreter composition
    Barrett, Edd
    Bolz, Carl Friedrich
    Tratt, Laurence
    [J]. COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2015, 44 : 199 - 217
  • [5] Embedded interpreters
    Benton, N
    [J]. JOURNAL OF FUNCTIONAL PROGRAMMING, 2005, 15 : 503 - 542
  • [6] Bjorner N, 2015, LECT NOTES COMPUT SC, V8931, P263
  • [7] Buro S., 2020, 21 IT C THEOR COMP S
  • [8] Equational Logic and Categorical Semantics for Multi-Languages
    Buro, Samuele
    Crole, Roy
    Mastroeni, Isabella
    [J]. ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2020, 352 : 79 - 103
  • [9] On the Multi-Language Construction
    Buro, Samuele
    Mastroeni, Isabella
    [J]. PROGRAMMING LANGUAGES AND SYSTEMS, ESOP 2019: 28TH EUROPEAN SYMPOSIUM ON PROGRAMMING, 2019, 11423 : 293 - 321
  • [10] Campbell G.A., 2013, SonarQube in Action