paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Software heritage: collecting, preserving, and sharing all our source code (keynote)

Software Heritage:收集、保存与共享我们的全部源代码(主旨演讲)
ASE Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering2018匹配度 2/10 · 该报告介绍 Software Heritage 这一源代码归档与知识库基础设施,属于软件工程数据基础设施层面,与用户关注的静态分析/AI 交叉、浮点程序分析、贝叶斯程序分析等核心问题没有直接的方法或问题关联。仅在需要大规模源码语料作为研究底座时才有间接参考价值。引用 3 inbox
Roberto Di Cosmo
crossref: 2026-09-12

AI 速览

一句话:介绍 Software Heritage 项目:构建通用源代码知识库,收集、保存并共享全部软件源码及开发历史。

Software Heritage 是一个非营利倡议,目标是收集、保存并共享所有已编写软件的源代码及其完整开发历史,构建通用的源代码知识库。它服务于多重需求:保存科学与技术知识,促进软件开发和复用,推动更好的科学,并为大规模、可复现的软件研究提供基础设施。目前项目已从超过 8000 万个代码库中收集了 40 多亿个唯一源文件,并将它们组织成巨大的 Merkle 图,在所有代码库间实现完全去重。这既能应对协作软件开发带来的增长,也为观察软件演化提供了独特视角。本次主旨演讲将讨论由此带来的新挑战与新机遇。

问题
源代码广泛存在丢失与碎片化风险,社会需要通用存档以支持保存、复用、科学研究和可复现软件研究。
方法
通过非营利倡议大规模收集、保存和共享源代码及完整开发历史,并用跨仓库完全去重的 Merkle 图组织。
评估
以已收集 40 多亿唯一源文件、8000 多万代码库的规模,以及 Merkle 图去重和演化观察能力说明其可行性与价值;主旨演讲进一步讨论挑战与机遇。
原文摘要(Abstract)

Software Heritage is a non profit initiative whose ambitious goal is to collect, preserve and share the source code of all software ever written, with its full development history, building a universal source code software knowledge base. Software Heritage addresses a variety of needs: preserving our scientific and technological knowledge, enabling better software development and reuse for society and industry, fostering better science, and building an essential infrastructure for large scale, reproducible software studies. We have already collected over 4 billions unique source files from over 80 millions repositories, and organised them into a giant Merkle graph, with full deduplication across all repositories. This allows us to cope with the growth of collaborative software development, and provides a unique vantage point for observing its evolution. In this talk, we will highlight the new challenges and opportunities that Software Heritage brings up.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot4789,
  title = {Software heritage: collecting, preserving, and sharing all our source code (keynote)},
  author = {Roberto Di Cosmo},
  booktitle = {ASE},
  year = {2018},
  doi = {10.1145/3238147.3241985}
}