Boilerplate Tax – Ranking popular programming languages by density
3 months ago
- #code-metrics
- #software-development
- #programming-languages
- 作者探讨了在scc工具中使用ULOC(独特代码行数)来测量项目复杂度,并与SLOC(源代码行数)进行对比。
- ULOC统计时忽略空行、右括号行和重复代码,但会计入注释,从而提供更准确的复杂度评估。
- 作者分析了GitHub热门仓库的ULOC数据,发现Clojure和Haskell等语言具有最高的代码独特性(DRY原则遵循度)。
- 与最初假设相反,现代语言如Go和Rust显示出相似的样板代码水平。
- 研究发现Java比预期更符合DRY原则,而Clojure在代码密度方面领先。
- 研究表明,与Lisp等更具表现力的古老语言相比,现代语言可能引入了更多冗余代码。
- 该研究的可复现资源包括Python脚本、scc工具和GitHub热门仓库列表。