Dynamic Flow Analysis for Java']JavaScript

被引:1
|
作者
Naus, Nico [1 ]
Thiemann, Peter [2 ]
机构
[1] Univ Utrecht, Utrecht, Netherlands
[2] Albert Ludwigs Univ Freiburg, Freiburg, Germany
来源
关键词
Type inference; !text type='Java']Java[!/text]Script; Flow analysis; Dynamic languages; INFERENCE; SYSTEM;
D O I
10.1007/978-3-030-14805-8_5
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Static flow analyses compute a safe approximation of a program's dataflow without executing it. Dynamic flow analyses compute a similar safe approximation by running the program on test data such that it achieves sufficient coverage. We design and implement a dynamic flow analysis for JavaScript. Our formalization and implementation observe a program's execution in a training run and generate flow constraints from the observations. We show that a solution of the constraints yields a safe approximation to the program's dataflow if each path in every function is executed at least once in the training run. As a by-product, we can reconstruct types for JavaScript functions from the results of the flow analysis. Our implementation shows that dynamic flow analysis is feasible for JavaScript. While our formalization concentrates on a core language, the implementation covers full JavaScript. We evaluated the implementation using the SunSpider benchmark.
引用
收藏
页码:75 / 93
页数:19
相关论文
共 50 条
  • [41] Java']JavaScript.
    Gillespie, T
    [J]. LIBRARY JOURNAL, 2000, 125 (13) : 146 - 146
  • [42] The Essence of Java']JavaScript
    Guha, Arjun
    Saftoiu, Claudiu
    Krishnamurthi, Shriram
    [J]. ECOOP 2010: OBJECT-ORIENTED PROGRAMMING, 2010, 6183 : 126 - 150
  • [43] The Java']JavaScript Ecosystem
    Frankston, Bob
    [J]. IEEE CONSUMER ELECTRONICS MAGAZINE, 2020, 9 (06) : 84 - 89
  • [44] Java']Javanni: A Verifier for Java']JavaScript
    Nordio, Martin
    Calcagno, Cristiano
    Furia, Carlo Alberto
    [J]. FUNDAMENTAL APPROACHES TO SOFTWARE ENGINEERING, FASE 2013, 2013, 7793 : 231 - 234
  • [45] Java与Javascript
    张光业
    [J]. 微电脑世界, 1996, (11) : 62 - 65
  • [46] An Efficient Mechanism of Generating Call Graph for Java']JavaScript using Dynamic Analysis in Web Application
    Toma, Tajkia Rahman
    Islam, Md Shariful
    [J]. 2014 INTERNATIONAL CONFERENCE ON INFORMATICS, ELECTRONICS & VISION (ICIEV), 2014,
  • [47] Java和JavaScript
    韩立
    王明哲
    [J]. 成功(教育), 2009, (01) : 177 - 177
  • [48] Java']JavaScript adventures
    Baldazo, R
    [J]. BYTE, 1996, 21 (08): : 117 - &
  • [49] Java']JavaScript fix
    Burge, MH
    [J]. DR DOBBS JOURNAL, 1996, 21 (08): : 12 - 12
  • [50] Java']JavaScript cookies
    Tichenor, CB
    [J]. DR DOBBS JOURNAL, 1997, 22 (05): : 42 - 45