On Friday, 19 February 2016 at 09:06:28 UTC, Jonathan M Davis wrote:
On Thursday, 18 February 2016 at 21:39:45 UTC, Ola Fosheim Grøstad wrote:
On Thursday, 18 February 2016 at 21:30:29 UTC, Jonathan M Davis wrote:
It's not a strawman. Walter has state previously that he's explicitly avoided looking at the source code for other compilers like gcc, because he doesn't want anyone to be able to accuse him of stealing code, copyright infringement, etc.

Isn't this much more likely to happen if you don't look at the codebase for other compilers? How do you know if someone submitting code isn't just translating from GCC if you haven't looked at GCC? If you have looked at GCC, then you can just choose a different implementation. :-)

Anyway, the clean-virgin thing in programming is related to reverse engineering very small codebases where the implementation most likely is going to be very similar (like BIOS). So you have one team writing the spec and another team implementing the spec (with no communication between them).

Walter has stated previously that there have been cases of lawyers coming to him about him possibly violating someone else's copyright, and when he tells them that he's never even looked at the source code, that satisfies them. And when the GPL is involved, that' paranoia is probably a very good idea. With the BSD license, and the license that LLVM uses (which is very close to the BSD license), it's nowhere near the same level of issue, since it really only comes down to giving attribution. But we had problems with that at one point with Tango code (which is BSD-licensed), so the dmd and Phobos devs as a whole have avoided even looking at Tango so that we could always, legitimately say that we hadn't looked at it and therefore could not possibly have copied from it.

So, this can be a real problem, even if it's just an issue with someone thinking that you should be giving attribution when you're not. And while the LLVM license would definitely allow LLVM code to be mixed into dmd's backend as long as the appropriate attribution was given, I don't know if Symantec would be okay with that or not. The fact that Symantec owns the dmd backend just makes things weird all around.

Regardless, whether Walter is willing to look at LLVM/LDC or work on it at all is up to him. I doubt that he'll choose to based on what he's said previously, but he might. However, I think that it's quite safe to say that GCC/GDC are completely off the table for him, because that's GPL-licensed, and folks definitely get unhappy when they think that you might have copied GPL code, and it's _not_ as simple as giving attribution to be able to take GPL-licensed code and mix it into your own, since it's a copyleft license (and one of the most extreme of them at that).

- Jonathan M Davis

For a change he might enjoy being the one that doesn't look/work with the backend, if those legal issues are such a major worry for him.

I remember back when DMD was even closed licensed than today that it sat on a different repo, so people would not look at its code by accident. DMD had its use at the beginning when only Walter was running the show, and things needed to be coded fast, he knew his turf and that allowed him to implement stuff with ease, but today that argument has little value, see the whole Dwarf EH stuff he had to do...

There are plenty things to do in the language design, frontend and runtime, hes work would greatly improve those parts.

Reply via email to