arrow
返回

Understanding the syntactic rule usage in java

delete2017-01-01
delete12
PRE
AI
D
Dong Qiu
李
李必信 (Bixin Li) *
E
Earl T. Barr
Zhendong Su 封面图
Zhendong Su (Zhendong Su)
DOI:10.1016/j.jss.2016.10.017delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Context: Syntax is fundamental to any programming language: syntax defines valid programs. In the 1970s, computer scientists rigorously and empirically studied programming languages to guide and inform language design. Since then, language design has been artistic, driven by the aesthetic concerns and intuitions of language architects. Despite recent studies on small sets of selected language features, we lack a comprehensive, quantitative, empirical analysis of how modern, real-world source code exercises the syntax of its programming language. Objective: This study aims to understand how programming language syntax is employed in actual development and explore their potential applications based on the results of syntax usage analysis. Method: We present our results on the first such study on Java, a modern, mature, and widely-used programming language. Our corpus contains over 5000 open-source Java projects, totalling 150 million source lines of code (SLoC). We study both independent (i.e. applications of a single syntax rule) and dependent (i.e. applications of multiple syntax rules) rule usage, and quantify their impact over time and project size. Results: Our study provides detailed quantitative information and yields insight, particularly (i) confirming the conventional wisdom that the usage of syntax rules is Zipfian; (ii) showing that the adoption of new rules and their impact on the usage of pre-existing rules vary significantly over time; and (iii) showing that rule usage is highly contextual. Conclusions: Our findings suggest potential applications across language design, code suggestion and completion, automatic syntactic sugaring, and language restriction. (C) 2016 Elsevier Inc. All rights reserved.
Keyword:
Language syntax
Empirical study
Practical language usage
AI总结

AI总结

对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。

期刊

Journal of Systems and Software 封面图
Journal of Systems and Software
IF:
4.1
论文数:
5.5K
被引数:
8.4K

机构

U
University College London
学者数:
7.9W
论文数: 6.2W
被引数: 15.7W
S
southeast university - china
学者数:
5.3W
论文数: 4.9W
被引数: 57
U
university of london
学者数:
21.5W
论文数: 19.7W
被引数: 305
学者 查看更多机构
引用论文

引用论文

Adoption and use of Java generics采用和使用Java泛型
err2012-12-06
err34
PREAI
errParnin, Chris; Bird, Christian; Murphy-Hill, Emerson
err分享
err收藏
err分享
err收藏
err分享
err收藏
Mechanism of the conductivity and sensor response of nanostructured In2O3+ZnO films
err2013-09-03
err0
PREAI
errG. N. Gerasimov; V. F. Gromov; T. V. Belysheva; L. I. Trakhtenberg
err分享
err收藏