Jump to page: 1 2
Thread overview
Mass-enabling D => License question
May 20, 2014
Andre
May 20, 2014
John Colvin
May 21, 2014
Max Barraclough
May 21, 2014
ed
May 21, 2014
Max Barraclough
May 21, 2014
Jacob Carlborg
May 22, 2014
Kagamin
May 21, 2014
Jacob Carlborg
May 21, 2014
Joakim
May 21, 2014
Joakim
May 21, 2014
Max Barraclough
May 21, 2014
Jacob Carlborg
May 21, 2014
andre
May 21, 2014
John Colvin
May 21, 2014
Jacob Carlborg
May 22, 2014
marcpmichel
May 22, 2014
Max Barraclough
May 22, 2014
marcpmichel
May 20, 2014
Hi,

I like D due to its clear syntax and power. For a business application developer what is really missing is a full blown IDE which enables
Rapid Application Development.
=> GUI
=> Database
=> Internet components
=> Refactoring
=> ... and a lot things more

If I compare the time I need to develop a D application and a delphi
application there are several weeks between unfortunatelly
(my experience).

I wonder whether it is possible from a license point of view to
develop an IDE for D and sell it? Of course there are license issues
due to fact that D must be integrated in the package but someone would
only pay for the IDE.
On the other side, a good IDE will mass enabled D for business application developer.

If someone will create an IDE for D like Borland has done for Delphi
this would lead to an huge success for D in my opinion.

What do you think? Would you appreciate such an IDE?

Kind regards
André


May 20, 2014
On Tuesday, 20 May 2014 at 20:44:57 UTC, Andre wrote:
> Hi,
>
> I like D due to its clear syntax and power. For a business application developer what is really missing is a full blown IDE which enables
> Rapid Application Development.
> => GUI
> => Database
> => Internet components
> => Refactoring
> => ... and a lot things more
>
> If I compare the time I need to develop a D application and a delphi
> application there are several weeks between unfortunatelly
> (my experience).
>
> I wonder whether it is possible from a license point of view to
> develop an IDE for D and sell it? Of course there are license issues
> due to fact that D must be integrated in the package but someone would
> only pay for the IDE.
> On the other side, a good IDE will mass enabled D for business application developer.
>
> If someone will create an IDE for D like Borland has done for Delphi
> this would lead to an huge success for D in my opinion.
>
> What do you think? Would you appreciate such an IDE?
>
> Kind regards
> André

What licensing problems do you foresee? Bear in the mind that although the dmd backend has a restrictive licence that prohibits redistribution without permission, permission to redistribute is normally easy to get from Walter. Alternatively, if the clients computer does the download of dmd from dlang.org as part of the IDE installer then you circumvent the problem entirely.

To the best of my (limited) knowledge, the open source licenses used in all 3 main compilers do not prohibit redistribution and/or selling for profit.
May 21, 2014
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.

Strictly, John is right in that the GPL doesn't prevent you from
charging for your code, but seeing as that code will be GPL'ed,
anyone who buys it will then be free to share it publicly free of
charge. (You're also required to provide source.)

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.

Here is the official GPL FAQ:
https://www.gnu.org/licenses/gpl-faq.html

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.)

Usual disclaimer: I'm not a lawyer, certainly not a copyright
lawyer, certainly not your lawyer, etc.
May 21, 2014
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.
>
> Strictly, John is right in that the GPL doesn't prevent you from
> charging for your code, but seeing as that code will be GPL'ed,
> anyone who buys it will then be free to share it publicly free of
> charge. (You're also required to provide source.)
>
> 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.
>
> Here is the official GPL FAQ:
> https://www.gnu.org/licenses/gpl-faq.html
>
> 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.)
>
> Usual disclaimer: I'm not a lawyer, certainly not a copyright
> lawyer, certainly not your lawyer, etc.


Yet more GPL bashing? This is getting very boring these days.

A GPL'd toolchain should not be a blocker for a commercial IDE. I
have such an IDE compiling my C++ code as I am typing this out.

GPL is not perfect but it's currently a good middle ground
license that allows developers to release code open source but
protect their rights to earn a living from it.

Or put it another way, if you want to make money from source code
that
cost the original author a lot of time and effort, then the
original author deserves the right to *choose* GPL and receive
something in return.

Either way the original author chose Open Source and that is
what's important.

GPL does not hinder open source development, nor the use of open
source
software in a commercial setting.

Cheers,
ed
May 21, 2014
On 21/05/14 02:16, 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.

There's no need to link with DMD.

> Strictly, John is right in that the GPL doesn't prevent you from
> charging for your code, but seeing as that code will be GPL'ed,
> anyone who buys it will then be free to share it publicly free of
> charge. (You're also required to provide source.)
>
> 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.

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.

The code produce by GPL compiler does not fall under the GPL license [2], if that were the case GCC would be useless for many users and companies.

[1] https://www.gnu.org/licenses/gpl-faq.html#GPLCompatInstaller
[2] https://www.gnu.org/licenses/gpl-faq.html#CanIUseGPLToolsForNF

-- 
/Jacob Carlborg
May 21, 2014
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.
May 21, 2014
On Wednesday, 21 May 2014 at 07:50:33 UTC, Joakim wrote:
> 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.

You can modify a GPL'ed compiler to work as a stand alone server with shared memory interface. You are allowed to distribute it as a binary with other kinds of software. You don't have to make source available unless the receiver of the binary explicitly requests it, and only for the GPL'ed server.

GPL is based on copyright law (WIPO) in order to work under different jurisdictions, so it is fairly permissive.
May 21, 2014
On 21/05/14 09:50, Joakim wrote:

> 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.

That's a completely different thing. I would like to see someone try doing that with DMD ;). I assume they didn't want to do that since that feels quite unrealistic at this stage, DMD is not really meant for this type of integration.

-- 
/Jacob Carlborg
May 21, 2014
On Wednesday, 21 May 2014 at 09:25:56 UTC, Jacob Carlborg wrote:
> On 21/05/14 09:50, Joakim wrote:
>
>> 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.
>
> That's a completely different thing. I would like to see someone try doing that with DMD ;). I assume they didn't want to do that since that feels quite unrealistic at this stage, DMD is not really meant for this type of integration.

The delphi ide is able to create components which coding runs during design time in the ide. My idea for s.th. Like that is to compile d code to dll and during runtime load it into the ide. But as far as I understand this could also be made as external toolchain call to DMD which is also allowed with the license. Kind regards andre
May 21, 2014
On Wednesday, 21 May 2014 at 01:53:57 UTC, ed wrote:
> Yet more GPL bashing? This is getting very boring these days.

No, I'm not *bashing*. Were I the owner of DMD, the restrictions facilitated by the GPL are exactly what I'd want.

I think we're agreed here really, ed.

On Wednesday, 21 May 2014 at 06:40:44 UTC, Jacob Carlborg wrote:
> There's no need to link with DMD.

I assumed we were talking about using the frontend as a means to enable syntax-highlighting and such, rather than simple invocation of the DMD compiler, which of course wouldn't be a problem.

> It doesn't need to because it doesn't link with GCC. It uses invokes GCC as an external process to
build projects.

XCode uses its own C/C++/Objective-C/Objective-C++ parser then, I take it?

On Wednesday, 21 May 2014 at 07:50:33 UTC, Joakim wrote:
> Not true, the DMD frontend is dual-licensed, both GPL and the
Artistic license:

You're right. Looking at Point 7, the Artistic Licence might allow integration of the front-end into a commercial IDE, for, say, syntax highlighting. https://github.com/D-Programming-Language/dmd/blob/master/src/artistic.txt

> I'd hope not. ;)

Other than the Artistic Licence dual-licensing, what did I get wrong?
« First   ‹ Prev
1 2