An Analysis of the Dynamic Behavior of Java']JavaScript Programs

被引:55
|
作者
Richards, Gregor [1 ]
Lebresne, Sylvain [1 ]
Burg, Brian [1 ]
Vitek, Jan [1 ]
机构
[1] Purdue Univ, Dept Comp Sci, Lab S3, W Lafayette, IN 47907 USA
关键词
Experimentation; Languages; Measurement; Dynamic Behavior; Execution Tracing; Dynamic Metrics; Program Analysis; !text type='Java']Java[!/text]Script;
D O I
10.1145/1809028.1806598
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The JavaScript programming language is widely used for web programming and, increasingly, for general purpose computing. As such, improving the correctness, security and performance of JavaScript applications has been the driving force for research in type systems, static analysis and compiler techniques for this language. Many of these techniques aim to reign in some of the most dynamic features of the language, yet little seems to be known about how programmers actually utilize the language or these features. In this paper we perform an empirical study of the dynamic behavior of a corpus of widely-used JavaScript programs, and analyze how and why the dynamic features are used. We report on the degree of dynamism that is exhibited by these JavaScript programs and compare that with assumptions commonly made in the literature and accepted industry benchmark suites.
引用
收藏
页码:1 / 12
页数:12
相关论文
共 50 条
  • [1] An Analysis of the Dynamic Behavior of Java']Java Script Programs
    Richards, Gregor
    Lebresne, Sylvain
    Burg, Brian
    Vitek, Jan
    [J]. PLDI '10: PROCEEDINGS OF THE 2010 ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION, 2010, : 1 - 12
  • [2] JS']JSFox: Integrating Static and Dynamic Type Analysis of Java']JavaScript Programs
    Tan, Tian Huat
    Xue, Yinxing
    Chen, Manman
    Liu, Shuang
    Yu, Yi
    Sun, Jun
    [J]. PROCEEDINGS OF THE 2017 IEEE/ACM 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C 2017), 2017, : 256 - 258
  • [3] Industry Practice of Java']JavaScript Dynamic Analysis on WeChat Mini-Programs
    Liu, Yi
    Xie, Jinhui
    Yang, Jianbo
    Guo, Shiyu
    Deng, Yuetang
    Li, Shuqing
    Wu, Yechang
    Liu, Yepang
    [J]. 2020 35TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE 2020), 2020, : 1189 - 1193
  • [4] Dynamic Flow Analysis for Java']JavaScript
    Naus, Nico
    Thiemann, Peter
    [J]. TRENDS IN FUNCTIONAL PROGRAMMING (TFP 2016), 2019, 10447 : 75 - 93
  • [5] Analysis of Java']JavaScript Programs: Challenges and Research Trends
    Sun, Kwangwon
    Ryu, Sukyoung
    [J]. ACM COMPUTING SURVEYS, 2017, 50 (04)
  • [6] Empirical study of the dynamic behavior of Java']JavaScript objects
    Wei, Shiyi
    Xhakaj, Franceska
    Ryder, Barbara G.
    [J]. SOFTWARE-PRACTICE & EXPERIENCE, 2016, 46 (07): : 867 - 889
  • [7] Dynamic Analysis Using Java']JavaScript Proxies
    Christophe, Laurent
    De Roover, Coen
    De Meuter, Wolfgang
    [J]. 2015 IEEE/ACM 37TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, VOL 2, 2015, : 813 - 814
  • [8] Converting Physlets and Other Java']Java Programs to Java']JavaScript
    Christian, Wolfgang
    Belloni, Mario
    Hanson, Robert M.
    Mason, Bruce
    Barbato, Lyle
    [J]. PHYSICS TEACHER, 2021, 59 (04): : 278 - 281
  • [9] Towards Specializing Java']JavaScript Programs
    Thiemann, Peter
    [J]. PERSPECTIVES OF SYSTEM INFORMATICS, PSI 2014, 2015, 8974 : 320 - 334
  • [10] Completeness of Abstract Domains for String Analysis of Java']JavaScript Programs
    Arceri, Vincenzo
    Olliaro, Martina
    Cortesi, Agostino
    Mastroeni, Isabella
    [J]. THEORETICAL ASPECTS OF COMPUTING - ICTAC 2019, 2019, 11884 : 255 - 272