Re: Mass-enabling D => License question

2014-05-22 Thread marcpmichel via Digitalmars-d

On Thursday, 22 May 2014 at 14:06:10 UTC, Max Barraclough wrote:


The MonoD developer is accepting donations:
http://mono-d.alexanderbothe.com/


I my mind, such a crowdfunded IDE for D, announced by Walter and
Andrei, should be written in D.
It could be the necessary bootstrap for such a big open-sourced
project.
This, indirectly, would also serve as advertisement for D.


Re: Mass-enabling D => License question

2014-05-22 Thread Max Barraclough via Digitalmars-d

On Thursday, 22 May 2014 at 09:51:17 UTC, marcpmichel wrote:

To be back on topic :

What about trying crowdfunding to pay a few developers to build 
an IDE for D ?

What about Digital Mars doing it ?
Where is the video with Walter and Andrei asking for 
contributions ?


The MonoD developer is accepting donations:
http://mono-d.alexanderbothe.com/

(Unrelated: The JavaScript-free captcha is utterly impossible, or 
else actually broken. Most annoying.)


Re: Mass-enabling D => License question

2014-05-22 Thread marcpmichel via Digitalmars-d

To be back on topic :

What about trying crowdfunding to pay a few developers to build 
an IDE for D ?

What about Digital Mars doing it ?
Where is the video with Walter and Andrei asking for 
contributions ?


Re: Mass-enabling D => License question

2014-05-22 Thread Kagamin via Digitalmars-d

On Wednesday, 21 May 2014 at 09:59:54 UTC, Max Barraclough wrote:
Other than the Artistic Licence dual-licensing, what did I get 
wrong?


Syntax highlighting requires only minimal lexer. Code completion 
should be done out of process in order to easily restart it if it 
overuses memory.


Re: Mass-enabling D => License question

2014-05-21 Thread via Digitalmars-d

On Wednesday, 21 May 2014 at 10:52:34 UTC, Joakim wrote:
I don't know about that last point, and I'm not about to reread 
the GPL to find out, but sure, it's all a matter of how tightly 
you link against GPL code.


Shared memory, pipelines etc are not linking… If you exchange 
data you are ok as they are independent works.





Re: Mass-enabling D => License question

2014-05-21 Thread Jacob Carlborg via Digitalmars-d

On 21/05/14 12:02, John Colvin wrote:


Also, note that linking to GPL licenced shared libraries/dlls/dylibs or
whatever you use doesn't necessarily mean the GPL has got you wrapped in
it's rather fuzzy web.  AKAIK it's a matter of debate and has never been
tested in court


As far as I know, if you link dynamically with a GPL library you're 
library/application need to be GPL as well. That's why LGPL exists, 
where it's allowed.



, but it's enough for many current creators/distributors
of closed source software for linux who call various GPL system libs via
the shared library interfaces.


GPL (and LGPL) has a exception for linking with system libraries.

--
/Jacob Carlborg


Re: Mass-enabling D => License question

2014-05-21 Thread Jacob Carlborg via Digitalmars-d

On 21/05/14 11:59, Max Barraclough wrote:


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.


I assumed we weren't, since it's not really made for that. It would take 
a lot of work to make DMD useable as a library.



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


Yes, now days it uses libclang. It still compiles the code by invoking 
the compiler in an external process. Which could be GCC or Clang.


--
/Jacob Carlborg


Re: Mass-enabling D => License question

2014-05-21 Thread Max Barraclough via Digitalmars-d

On Wednesday, 21 May 2014 at 10:52:34 UTC, Joakim wrote:
Other than the Artistic Licence dual-licensing, what did I get 
wrong?

Well, that's a pretty fundamental point, but it was a joke.


I think you're right - I'm not all that familiar with the 
Artistic Licence, but it seems a better fit for building a 
proprietary IDE around DMD.



From this unreliable source, it looks like the Artistic Licence 
(at least Version 2.0, though I presume 1.0 is in the same 
spirit) is intended to be proprietary-friendly, so the GPL 
discussion is for naught: 
http://osdir.com/ml/licenses.open-source.general/2007-03/msg00055.html


DMD seems to reference 'Version 1.0' of the Artistic Licence, 
which the FSF consider to be too vague to really reason about:

https://www.gnu.org/licenses/license-list.html#ArtisticLicense


Re: Mass-enabling D => License question

2014-05-21 Thread Joakim via Digitalmars-d
On Wednesday, 21 May 2014 at 09:17:34 UTC, Ola Fosheim Grøstad 
wrote:
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.
I don't know about that last point, and I'm not about to reread 
the GPL to find out, but sure, it's all a matter of how tightly 
you link against GPL code.


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.

I don't think they know that. ;)

On Wednesday, 21 May 2014 at 09:59:54 UTC, Max Barraclough wrote:

On Wednesday, 21 May 2014 at 07:50:33 UTC, Joakim wrote:

I'd hope not. ;)


Other than the Artistic Licence dual-licensing, what did I get 
wrong?
Well, that's a pretty fundamental point, but it was a joke.  See 
the wink? :)


On Wednesday, 21 May 2014 at 10:02:31 UTC, John Colvin wrote:
Also, note that linking to GPL licenced shared 
libraries/dlls/dylibs or whatever you use doesn't necessarily 
mean the GPL has got you wrapped in it's rather fuzzy web.  
AKAIK it's a matter of debate and has never been tested in 
court, but it's enough for many current creators/distributors 
of closed source software for linux who call various GPL system 
libs via the shared library interfaces.
And constantly in flux, see the recent court decision that 
claimed that Google's use of Java APIs in Android infringed on 
Oracle's "copyright" on them:


https://www.eff.org/deeplinks/2014/05/dangerous-ruling-oracle-v-google-federal-circuit-reverses-sensible-lower-court

Also - and this is the biggest thing that people fail to 
realise in all software license debates - it is a practical 
impossibility to create a software license that is well defined 
and valid in all jurisdictions. For a global enterprise, almost 
*everything* is legally fuzzy.
It is true that widely varying copyright laws all over the world 
make it difficult for more ambitious licenses like the GPL to be 
written, as opposed to simpler licenses like BSD, but it is also 
true that many of those OSS licenses are badly written even for 
the one jurisdiction they were written in.  The Artistic license 
has taken a lot of flak for this over the years, same with parts 
of the GPL.


Re: Mass-enabling D => License question

2014-05-21 Thread John Colvin via Digitalmars-d

On Tuesday, 20 May 2014 at 22:50:45 UTC, John Colvin wrote:

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.


Also, note that linking to GPL licenced shared 
libraries/dlls/dylibs or whatever you use doesn't necessarily 
mean the GPL has got you wrapped in it's rather fuzzy web.  AKAIK 
it's a matter of debate and has never been tested in court, but 
it's enough for many current creators/distributors of closed 
source software for linux who call various GPL system libs via 
the shared library interfaces.



Also - and this is the biggest thing that people fail to realise 
in all software license debates - it is a practical impossibility 
to create a software license that is well defined and valid in 
all jurisdictions. For a global enterprise, almost *everything* 
is legally fuzzy.


Re: Mass-enabling D => License question

2014-05-21 Thread Max Barraclough via Digitalmars-d

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?


Re: Mass-enabling D => License question

2014-05-21 Thread andre via Digitalmars-d

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


Re: Mass-enabling D => License question

2014-05-21 Thread Jacob Carlborg via Digitalmars-d

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


Re: Mass-enabling D => License question

2014-05-21 Thread via Digitalmars-d

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.


Re: Mass-enabling D => License question

2014-05-21 Thread Joakim via Digitalmars-d

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.


Re: Mass-enabling D => License question

2014-05-20 Thread Jacob Carlborg via Digitalmars-d

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


Re: Mass-enabling D => License question

2014-05-20 Thread ed via Digitalmars-d

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


Re: Mass-enabling D => License question

2014-05-20 Thread Max Barraclough via Digitalmars-d

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.


Re: Mass-enabling D => License question

2014-05-20 Thread John Colvin via Digitalmars-d

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.