An analysis of programming language statement frequency in C, C plus plus , and Java']Java source code

被引:3
|
作者
Zhu, Xiaoyan [1 ]
Whitehead, E. James [2 ]
Sadowski, Caitlin [2 ]
Song, Qinbao [1 ]
机构
[1] Xi An Jiao Tong Univ, Xian 710049, Shaanxi, Peoples R China
[2] Univ Calif Santa Cruz, Santa Cruz, CA 95064 USA
来源
SOFTWARE-PRACTICE & EXPERIENCE | 2015年 / 45卷 / 11期
基金
中国国家自然科学基金;
关键词
statement frequency; metrics; source code; EMPIRICAL-ANALYSIS; C++;
D O I
10.1002/spe.2298
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Statement frequency data can inform programming language research and provide a solid basis for frequency-based code analysis. This paper presents an analysis of programming language statement frequency in a large corpus of C, C++, and Java source code, comprised of more than 54 million lines of code. Across these languages, the top four work-performing statement types are Method/Function Call, Assignment, If, and Return. As compared to studies of Formula Translating System, Common Business Oriented Language and Programming Language One in the 1970s, the main change is the prevalence of method/function calls. Statement use frequency across languages is remarkably similar, and within each individual language, most statement types have a frequency distribution that occupies a small range. A more detailed examination of assignment and looping statement types shows that many assignments simply involve copying of data and that C++/Java use for statements more than C. Copyright (C) 2014 John Wiley & Sons, Ltd.
引用
收藏
页码:1479 / 1495
页数:17
相关论文
共 50 条
  • [21] Java']JavaML: a markup language for Java']Java source code
    Badros, GJ
    COMPUTER NETWORKS, 2000, 33 (1-6) : 159 - 177
  • [22] Java']JavaScript primer plus: Enhancing Web pages with Java']JavaScript programming language
    Kelly, AG
    INTERNATIONAL JOURNAL OF INFORMATION MANAGEMENT, 1998, 18 (02) : 162 - 162
  • [23] Auto Clustering Source Code To Detect Plagiarism Of Student Programming Assignments in Java']Java Programming Language
    Amaliah, Yusni
    Musu, Wilem
    Suprianto
    Fadlan, Muhammad
    3RD INTERNATIONAL CONFERENCE ON CYBERNETICS AND INTELLIGENT SYSTEMS (ICORIS 2021), 2021, : 695 - +
  • [24] Using Problets for Problem-Solving Exercises in Introductory C plus plus /Java']Java/C# Courses
    Kumar, Amruth N.
    2013 IEEE FRONTIERS IN EDUCATION CONFERENCE, 2013,
  • [25] OpenMPI plus Java']Java as a High Performance Language
    Adams, Joel C.
    2022 IEEE/ACM INTERNATIONAL WORKSHOP ON EDUCATION FOR HIGH PERFORMANCE COMPUTING (EDUHPC), 2022, : 11 - 17
  • [26] Scripting Language for Java']Java Source Code Recognition
    Bublik, Tomas
    Virius, Miroslav
    INTERNATIONAL CONFERENCE ON FUTURE INFORMATION ENGINEERING (FIE 2014), 2014, 10 : 119 - 130
  • [27] Object-oriented interprocess communication - Client/server development in C plus plus and Java']Java
    Blaha, S
    DR DOBBS JOURNAL, 1996, 21 (08): : 24 - +
  • [28] Static Analysis of Functors' Mathematical Properties in C plus plus Source Code
    Babati, Bence
    Pataki, Norbert
    INTERNATIONAL CONFERENCE ON NUMERICAL ANALYSIS AND APPLIED MATHEMATICS (ICNAAM-2018), 2019, 2116
  • [29] Investigating Eye Movements in Natural Language and C plus plus Source Code - A Replication Experiment
    Peachock, Patrick
    Iovino, Nicholas
    Sharif, Bonita
    AUGMENTED COGNITION: NEUROCOGNITION AND MACHINE LEARNING, AC 2017, PT I, 2017, 10284 : 206 - 218
  • [30] Generic Programming in C++ and Java']Java
    Mathur, Shilpa
    INTERNATIONAL JOURNAL OF COMPUTER SCIENCE AND NETWORK SECURITY, 2011, 11 (09): : 60 - 64