On Wednesday, 21 May 2014 at 00:16:07 UTC, Max Barraclough wrote:
The DMD frontend is licensed under the GPL, which is 'viral': if
your code links against it, you'll have to release your code as
GPL.
Not true, the DMD frontend is dual-licensed, both GPL and the
Artistic license:

https://github.com/D-Programming-Language/dmd/blob/master/src/readme.txt

While both are badly-written licenses that have generated a lot
of debate about what they really mean because of vague
terminology, the bane of legal documents, the Artistic license
appears to allow redistribution in binary form without providing
source:

https://github.com/D-Programming-Language/dmd/blob/master/src/artistic.txt

John's idea of having the user provide DMD, rather than bundling
it, may or may not be against the letter of the GPL (I'm unsure,
but I don't think it's exactly safe ground - your code is still
written to the DMD ABI, after all), but it's certainly against
the spirit.
I don't think John was talking about linking against dmd, merely
having the user download and run it standalone, which the GPL
doesn't prohibit.  And if you use the frontend under the Artistic
license, there's no problem with modifying or linking it either.

If I were you, I'd be asking: are there working D frontends
available other than DMD (from other IDE/compiler/tooling
projects)? If so, what's their licence? (I'm afraid I don't know
the answer to either.)
All three major D compilers, dmd, ldc, gdc, use the same dmd
frontend, though probably under different licenses, chosen from
the two that dmd offers.  There is also sdc, under the MIT
license, though I don't know how ready it is:

https://github.com/deadalnix/SDC

Usual disclaimer: I'm not a lawyer, certainly not a copyright
lawyer, certainly not your lawyer, etc.
I'd hope not. ;)

On Wednesday, 21 May 2014 at 06:40:44 UTC, Jacob Carlborg wrote:
It's not against the GPL license [1]. Many companies do this, Apple for example. They've created Xcode which comes (did come) bundled with GCC. Xcode is absolutely not open source. It doesn't need to because it doesn't link with GCC. It uses invokes GCC as an external process to build projects.
Yes, but they moved to the UIUC-licensed (basically the BSD
license) llvm eventually, partially because they wanted Xcode to
directly link against it.  I think it's that kind of integration
that Andre and Max have in mind, though as John noted, they're
not particularly precise about what they want.

Reply via email to