|
|
|
|
|
by DannyBee
4216 days ago
|
|
I actually wrote that wording for LLVM, so i'm happy to explain the discrepancy. Basically, we messed up when we changed the runtime license (I said MIT license when I meant zlib license, which only requires reproduction of notices in the source code), and had to issue a policy statement on the license to make people happy.
It is not accurate, legally, in its description of the MIT license. Effectively, by this statement, we are giving permission to not reproduce the notice, even though the license would actually require it. You don't have to take my word for it though, ask any other open source lawyer whether MIT requires notice reproduction for binaries. :) I would urge Rust not to make the same mistake.
(This mistake is currently being fixed in a few other "new" languages, in fact) |
|
I'm guessing you can't go giving out concrete legal advice for free, but could you point us towards languages that are fixing this? I see that Julia's stdlib uses MIT for non-external libraries,[1] and Go uses a BSD-style license that explicitly requires distributing the license with binaries,[2] so they're both in the same boat we are. AFAICT D's stdlib uses the Boost license[3] which explicitly allows one to forgo distributing the license with compiled artifacts, but I don't know if solving this issue entirely would require the entire compiler to be licensed under Boost as well. Presuming that interpreted languages can gracefully ignore this issue, I don't know which other "new" languages we could look at for inspiration.
[1] https://github.com/JuliaLang/julia/blob/master/LICENSE.md
[2] https://github.com/golang/go/blob/master/LICENSE
[3] https://github.com/D-Programming-Language/phobos/blob/master...