It is well-known, and often a topic of heated debates, that programs in some programming languages are more concise than in others. This is a relevant factor when comparing or aggregating volume-impacted metrics on source code written in a combination of programming languages. In this paper, we present a model for measuring the conciseness of programming languages in a consistent, objective and evidence-based way. We present the approach, explain how it is founded on information theoretical principles, present detailed analysis steps and show the quantitative results of applying this model to a large benchmark of diverse commercial software applications. We demonstrate that our metric for language conciseness is strongly correlated with both an alternative analytical approach, and with a large scale developer survey, and show how its results can be applied to improve software metrics for multi-language applications.
翻译:众所周知,而且经常是一个激烈辩论的议题,一些编程语言的节目比其他编程语言更加简洁,这是比较或汇总以编程语言编写的源代码量影响指标的一个相关因素。在本文中,我们提出了一个模式,以一致、客观和循证的方式衡量编程语言的简明性。我们介绍这一方法,解释它如何建立在信息理论原则的基础上,提出详细的分析步骤,并显示将这一模式应用于多种商业软件应用的庞大基准的量化结果。我们证明,我们的语言简明性指标与替代分析方法和大规模开发者调查密切相关,并表明其结果如何用于改进多种语言应用的软件指标。