Jump to page: 1 2 3
Thread overview
Free the DMD backend
May 29, 2016
open-source-guy
May 29, 2016
Joakim
May 29, 2016
Russel Winder
May 29, 2016
mogu
May 30, 2016
Matthias Klumpp
May 30, 2016
Saurabh Das
May 31, 2016
Michael
May 31, 2016
ag0aep6g
May 31, 2016
Johan Engelen
May 31, 2016
Atila Neves
May 31, 2016
Russel Winder
May 31, 2016
default0
Jun 01, 2016
Alex Parrill
Jun 02, 2016
Brad Anderson
Jun 01, 2016
Eugene Wissner
Jun 02, 2016
Matthias Klumpp
Jun 02, 2016
Basile B.
Jun 02, 2016
Eugene Wissner
Jun 02, 2016
Basile B.
Jun 02, 2016
Eugene Wissner
Jun 02, 2016
Basile B.
Jun 03, 2016
Eugene Wissner
Jun 03, 2016
Iain Buclaw
Jun 04, 2016
Russel Winder
May 29, 2016
Hi,

this is a short ping about one of D's weaknesses - the restrictive license for the backend. IIRC [1, 2, 3] the status is that because some parts have been written by Walter while he was employed by Symantec, it can't get an open-source license.
When I read the backend license [4], I read the following:

> The Software is copyrighted and comes with a single user license,
and may not be redistributed. If you wish to obtain a redistribution license,
please contact Digital Mars.

This actually means that all the 366 forks on Github would require approval by Digital Mars.
So luckily neither Symantec nor Digital Mars seem to bother much about the license, so why can't it be changed in an free & open source license that allows
free redistribution and modification?

This would also make it possible to distribute dmd out-of-the-box on the two biggest Linux distributions Debian and Ubuntu [5, 6].

[1] http://tomash.wrug.eu/blog/2009/03/06/free-the-dmd/
[2] http://forum.dlang.org/post/ikwvgrccoyhvvizcjvxd@forum.dlang.org
[3] https://semitwist.com/articles/article/view/dispelling-common-d-myths

[4] https://github.com/dlang/dmd/blob/master/src/backendlicense.txt
[5] https://en.wikipedia.org/wiki/Debian_Free_Software_Guidelines
[6] https://www.debian.org/doc/debian-policy/ch-archive.html#s-dfsg
May 29, 2016
On Sunday, 29 May 2016 at 03:52:33 UTC, open-source-guy wrote:
> Hi,
>
> this is a short ping about one of D's weaknesses - the restrictive license for the backend. IIRC [1, 2, 3] the status is that because some parts have been written by Walter while he was employed by Symantec, it can't get an open-source license.
> When I read the backend license [4], I read the following:
>
> [...]

It would be nice if that happened, but Walter has said Symantec isn't interested.  Aren't ldc and GDC enough?
May 29, 2016
On Sun, 2016-05-29 at 04:08 +0000, Joakim via Digitalmars-d wrote:
> 
[…]
> It would be nice if that happened, but Walter has said Symantec isn't interested.  Aren't ldc and GDC enough?

This is why LDC should be seen in the D community as the main production toolchain, and Dub should default to LDC for compilation.

-- 
Russel. ============================================================================= Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.winder@ekiga.net 41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel@winder.org.uk London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

May 29, 2016
On Sunday, 29 May 2016 at 10:56:57 UTC, Russel Winder wrote:
> This is why LDC should be seen in the D community as the main production toolchain, and Dub should default to LDC for compilation.

Agreed. Especially, LDC supports more platform.
May 30, 2016
On Sunday, 29 May 2016 at 10:56:57 UTC, Russel Winder wrote:
> On Sun, 2016-05-29 at 04:08 +0000, Joakim via Digitalmars-d wrote:
>> 
> […]
>> It would be nice if that happened, but Walter has said Symantec isn't interested.  Aren't ldc and GDC enough?
>
> This is why LDC should be seen in the D community as the main production toolchain, and Dub should default to LDC for compilation.

This is something which has been asked on my blog[1], and I do agree that having a completely free-as-in-freedom reference compiler would be an awesome win for the D ecosystem, and would pretty much kill most of the issues we have at distros to package D stuff. D is very unique with its half-proprietary compiler.
LDC seems to be a pretty good fit for replacing the backend. Shifting to LDC as reference compiler would basically mean to slowly give up DMD though, because other than being tested much, there wouldn't be a compelling reason to still use it when focus has shifted to LDC / GDC.
In any case, this is definitely something for Walter and Andrei to decide, and I do have a feeling that this question might have been raised already in the past...

[1]: http://blog.tenstral.net/2016/05/adventures-in-d-programming.html#comment-265879
May 30, 2016
On Monday, 30 May 2016 at 14:51:48 UTC, Matthias Klumpp wrote:
> On Sunday, 29 May 2016 at 10:56:57 UTC, Russel Winder wrote:
>> On Sun, 2016-05-29 at 04:08 +0000, Joakim via Digitalmars-d wrote:
>>> 
>> […]
>>> It would be nice if that happened, but Walter has said Symantec isn't interested.  Aren't ldc and GDC enough?
>>
>> This is why LDC should be seen in the D community as the main production toolchain, and Dub should default to LDC for compilation.
>
> This is something which has been asked on my blog[1], and I do agree that having a completely free-as-in-freedom reference compiler would be an awesome win for the D ecosystem, and would pretty much kill most of the issues we have at distros to package D stuff. D is very unique with its half-proprietary compiler.
> LDC seems to be a pretty good fit for replacing the backend. Shifting to LDC as reference compiler would basically mean to slowly give up DMD though, because other than being tested much, there wouldn't be a compelling reason to still use it when focus has shifted to LDC / GDC.
> In any case, this is definitely something for Walter and Andrei to decide, and I do have a feeling that this question might have been raised already in the past...
>
> [1]: http://blog.tenstral.net/2016/05/adventures-in-d-programming.html#comment-265879

The case for DMD though is compile speed. It really changes the way one writes programs and makes it possible to write bash script-like functionality in D because of a rapid compile-run cycle.

LDC and GDC are quite a bit slower than DMD. Is this gap inherent in the structure of these compilers or can there be an LDC mode which compiles as rapidly as DMD?

May 31, 2016
On Monday, 30 May 2016 at 15:06:42 UTC, Saurabh Das wrote:
> On Monday, 30 May 2016 at 14:51:48 UTC, Matthias Klumpp wrote:
>
> The case for DMD though is compile speed. It really changes the way one writes programs and makes it possible to write bash script-like functionality in D because of a rapid compile-run cycle.
>
> LDC and GDC are quite a bit slower than DMD. Is this gap inherent in the structure of these compilers or can there be an LDC mode which compiles as rapidly as DMD?

Can this be alleviated with something like rdmd for LDC? Does the old ldmd2 project still exist?
May 31, 2016
On 05/31/2016 11:32 AM, Michael wrote:
> On Monday, 30 May 2016 at 15:06:42 UTC, Saurabh Das wrote:
>> On Monday, 30 May 2016 at 14:51:48 UTC, Matthias Klumpp wrote:
[...]
>> LDC and GDC are quite a bit slower than DMD. Is this gap inherent in
>> the structure of these compilers or can there be an LDC mode which
>> compiles as rapidly as DMD?
>
> Can this be alleviated with something like rdmd for LDC? Does the old
> ldmd2 project still exist?

ldmd2 is alive and well. It's included in the releases. rdmd works fine with it.

But rdmd does not speed up compilation.
May 31, 2016
On Sunday, 29 May 2016 at 10:56:57 UTC, Russel Winder wrote:
> On Sun, 2016-05-29 at 04:08 +0000, Joakim via Digitalmars-d wrote:
>> 
> […]
>> It would be nice if that happened, but Walter has said Symantec isn't interested.  Aren't ldc and GDC enough?
>
> This is why LDC should be seen in the D community as the main production toolchain, and Dub should default to LDC for compilation.

No, no, no, no. We had LDC be the default already on Arch Linux for a while and it was a royal pain. I want to choose to use LDC when and if I need performance. Otherwise, I want my projects to compile as fast possible and be able to use all the shiny new features.

Atila
May 31, 2016
On Monday, 30 May 2016 at 15:06:42 UTC, Saurabh Das wrote:
>
> LDC and GDC are quite a bit slower than DMD. Is this gap inherent in the structure of these compilers or can there be an LDC mode which compiles as rapidly as DMD?

The difference in time between LDC and DMD is in the machine code generation that is much slower in LDC (LLVM) than in DMD, even in debug mode.
We are looking into improving codegen speed, but it is not something straightforward.

-Johan

« First   ‹ Prev
1 2 3