I have asked a similar question before but this time I want to focus on go
language. I have been reading the wiki page of go language and realized there is a license segment in the summary which says BSD style + Patent grant
. I'm aware that there is also a gcc
frontend for go
which I'm guessing have something like GPL
license although there was no mention of it in the wiki page, which made me wonder:
Is the mentioned BSD
license intended for:
if there are such distinctions at all?
A practical answer would be welcome (i.e. how can I license a source or binary?) as well as a contrast to the old languages (C
, C++
, Java
) if any..
To that end, I would say, no.
It's not the most popular programming language in the world. There are a relatively smaller number of developers using it and there are some good reasons for that. Go is relatively new and immature. It's a bare-bones language lacking a lot of the syntactical sugar that other languages have.
You can use almost any programming language in the cloud, but there are a few languages that stand out from the rest. Let's talk about one of those languages, Go. Go is an open-source programming language focused on simplicity, reliability, and efficiency.
Most parts of Go are licensed under a three-clause BSD style license and patent grant. This includes the gc compilers, standard libraries, and other related tools. There are two notable exceptions I'm aware of:
The language specification and other website documentation are licensed under the Creative Commons Attribution 3.0 License. Scroll to the very bottom of any page on golang.org to see. (I suppose this means that some source code comments are licensed the same way, which seems a little strange.)
gccgo's frontend is uses the same BSD style license as the rest of Go, however because it must be linked with the rest of gcc, it's effectively GPLv3. (Note that, contrary to janneb's claims, gccgo does not share any code with the other compiler. It does share some runtime code.)
There are ongoing efforts to separate out the parts of the gccgo frontend that depend on gcc so that it could be used as a frontend for other Go compilers, such as maybe an LLVM-based compiler. Such a compiler could be released completely under the BSD style license.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With