语言许可证

我之前也曾问过类似的问题,但是这次我想专注于go语言。我一直在阅读Go语言的Wiki页面,并意识到摘要中有一个许可部分,内容为BSD style + Patent grant。我知道还有一个gcc前端go,我猜测它具有类似GPL许可证的内容,尽管在Wiki页面中没有提及它,这使我感到奇怪:

所提到的BSD许可证是否旨在:

  • 编译器

  • 和/或语言

  • 和/或标准库

是否有这些区别?

一个实用的答案会受到欢迎(即我如何可以授权源或二进制?),以及旧的语言对比(CC++Java如果有的话)..


江户川乱折腾
浏览 180回答 2
2回答

天涯尽头无女友

Go的大多数部分均按照三条款BSD样式许可和专利授权进行许可。这包括gc编译器,标准库和其他相关工具。我知道有两个值得注意的例外:在语言规范和其他文件的网站都在Creative Commons Attribution 3.0许可协议进行许可。滚动到golang.org上任何页面的最底部以查看。(我想这意味着某些源代码注释是以相同方式获得许可的,这似乎有些奇怪。)gccgo的前端与Go的其余部分使用相同的BSD样式许可,但是由于必须与gcc的其余部分链接,因此它实际上是GPLv3。(请注意,与janneb的主张相反,gccgo不与其他编译器共享任何代码。它确实共享一些运行时代码。)正在进行不断的工作以分离出依赖于gcc的gccgo前端部分,以便将其用作其他Go编译器(例如基于LLVM的编译器)的前端。这样的编译器可以完全在BSD样式许可下发布。

绝地无双

BSD许可证适用于编译器和标准库。我不知道“语言本身”所依据的许可是什么;语言规范的文字甚至是什么意思?GCC中的go前端也是BSD许可的(AFAIK与其他go编译器共享代码),尽管其余GCC编译器仍在GPLv3下。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go