January 10, 2014
On 1/10/14 12:56 PM, John Colvin wrote:
> On Friday, 10 January 2014 at 20:54:06 UTC, John Colvin wrote:
>> On Friday, 10 January 2014 at 20:51:19 UTC, Dwhatever wrote:
>>> This might have been brought up before but I couldn't find any thread
>>> about this. As things has progressed I wonder if Digital Mars DMD
>>> should move over to use LLVM instead of its own code generation and
>>> compiler framework.
>>>
>>> As I see it with the small amount of contributors D-language has, DMD
>>> will never support anything beyond x86 as there are no resources for
>>> this. Also, why spend time on recreating the the code generation
>>> which has already been done with LLVM? This enables this community to
>>> focus on the language which is the most important part as well as
>>> supporting more and future processor targets.
>>
>> This comes up regularly. It's already been done. Ldc *is* dmd with
>> llvm backend. Gdc is the same idea but with the gcc framework.
>
> also, the digital mars backend is very fast, which is actually good
> selling point for some use-cases where compilation speed is important.

We plan to rig Facebook's build system to use dmd in debug mode and gdc in release mode by default. Best of both worlds.

Andrei

January 10, 2014
On Friday, 10 January 2014 at 21:44:52 UTC, Andrei Alexandrescu wrote:
> We plan to rig Facebook's build system to use dmd in debug mode and gdc in release mode by default. Best of both worlds.
>
> Andrei

Speaking of Facebook, I'd be interested in seeing how your lexer generator ended up compared to mine. Did you ever get permission to release that code?
January 10, 2014
On 10/01/14 22:24, John Colvin wrote:
> I've got some pretty strong sympathies with the gpl, but really? In most
> practical circumstances gpl is on the more restrictive end of common open-source
> licences.

Yes, but there's a difference between "restrictive" and "intrusive".  Using GDC doesn't intrude into anything -- the standard libraries are still Boost-licensed and simply _using_ a GPL'd piece of software doesn't place any obligations on you.
January 10, 2014
Am 10.01.2014 22:24, schrieb John Colvin:
> On Friday, 10 January 2014 at 21:12:21 UTC, Iain Buclaw wrote:
>> On 10 January 2014 21:02, Dwhatever <not@real.com> wrote:
>>>
>>> I see LLVM as a better choice because the license is less intrusive.
>>
>> That is a rather ignorant assumption.
>
> I've got some pretty strong sympathies with the gpl, but really? In most
> practical circumstances gpl is on the more restrictive end of common
> open-source licences.

Restrictive to whom?

One reason why my open source code is under GPL, is due to my
experience in projects in the enterprise world, where other more
"free" licenses are taken as free beer and as a mean of avoiding paying licenses.

No contribution is ever done, in any form.

--
Paulo
January 11, 2014
On 1/10/14 1:58 PM, Brian Schott wrote:
> On Friday, 10 January 2014 at 21:44:52 UTC, Andrei Alexandrescu wrote:
>> We plan to rig Facebook's build system to use dmd in debug mode and
>> gdc in release mode by default. Best of both worlds.
>>
>> Andrei
>
> Speaking of Facebook, I'd be interested in seeing how your lexer
> generator ended up compared to mine. Did you ever get permission to
> release that code?

Yes, it's in the pipeline.

Andrei
January 11, 2014
On 11 January 2014 06:59, Iain Buclaw <ibuclaw@gdcproject.org> wrote:

> On 10 January 2014 20:54, John Colvin <john.loughran.colvin@gmail.com> wrote:
> > On Friday, 10 January 2014 at 20:51:19 UTC, Dwhatever wrote:
> >>
> >> This might have been brought up before but I couldn't find any thread about this. As things has progressed I wonder if Digital Mars DMD should move over to use LLVM instead of its own code generation and compiler framework.
> >>
> >> As I see it with the small amount of contributors D-language has, DMD
> will
> >> never support anything beyond x86 as there are no resources for this.
> Also,
> >> why spend time on recreating the the code generation which has already
> been
> >> done with LLVM? This enables this community to focus on the language
> which
> >> is the most important part as well as supporting more and future
> processor
> >> targets.
> >
> >
> > This comes up regularly. It's already been done. Ldc *is* dmd with llvm backend. Gdc is the same idea but with the gcc framework.
>
> Indeed. But naturally I'd suggest they move to GCC.  ;-)
>

Is it possible that GDC will ever produce binaries that will link against
the microsoft libs without problems?
In my experience, GDC produces intrinsic calls to its own runtime all over
the place, and it's not compatible with the microsoft runtime. I also
recall library format mismatch, but that was a long time ago, and I think
we discussed it again since deciding that GDC is now using the same format
as VisualC in windows...?
Can GDC write PDB debuginfo into the objects (CV8 I think it is)?


January 11, 2014
On Friday, 10 January 2014 at 21:00:24 UTC, Paulo Pinto wrote:
> Because Walter wouldn't be able to work on his current job any longer if he looks into other compiler vendors source code.
>
> IP laws are always a complicated issue.

Unless you have an actual explanation as to why this would be the case, I'd simply regard this as FUD. I see how the viral nature of the GCC license might be a problem for that, but as far as LLVM is concerned, Walter would even be able to just rebrand Clang as DMC and ship it as a closed-source package. LLVM also doesn't require any copyright assignments, which might be an impediment for contributing any fixes back to GCC.

David
January 11, 2014
On 11 January 2014 00:24, Manu <turkeyman@gmail.com> wrote:
> On 11 January 2014 06:59, Iain Buclaw <ibuclaw@gdcproject.org> wrote:
>>
>> On 10 January 2014 20:54, John Colvin <john.loughran.colvin@gmail.com> wrote:
>> > On Friday, 10 January 2014 at 20:51:19 UTC, Dwhatever wrote:
>> >>
>> >> This might have been brought up before but I couldn't find any thread
>> >> about this. As things has progressed I wonder if Digital Mars DMD
>> >> should
>> >> move over to use LLVM instead of its own code generation and compiler
>> >> framework.
>> >>
>> >> As I see it with the small amount of contributors D-language has, DMD
>> >> will
>> >> never support anything beyond x86 as there are no resources for this.
>> >> Also,
>> >> why spend time on recreating the the code generation which has already
>> >> been
>> >> done with LLVM? This enables this community to focus on the language
>> >> which
>> >> is the most important part as well as supporting more and future
>> >> processor
>> >> targets.
>> >
>> >
>> > This comes up regularly. It's already been done. Ldc *is* dmd with llvm backend. Gdc is the same idea but with the gcc framework.
>>
>> Indeed. But naturally I'd suggest they move to GCC.  ;-)
>
>
> Is it possible that GDC will ever produce binaries that will link against
> the microsoft libs without problems?
> In my experience, GDC produces intrinsic calls to its own runtime all over
> the place, and it's not compatible with the microsoft runtime. I also recall
> library format mismatch, but that was a long time ago, and I think we
> discussed it again since deciding that GDC is now using the same format as
> VisualC in windows...?
> Can GDC write PDB debuginfo into the objects (CV8 I think it is)?

As I understand, neither GCC nor LLVM are capable of producing PDB. Has Microsoft even release any documentation or code necessary to produce files in their PDB format?
January 11, 2014
On 11.01.2014 12:58, David Nadlinger wrote:
> On Friday, 10 January 2014 at 21:00:24 UTC, Paulo Pinto wrote:
>> Because Walter wouldn't be able to work on his current job any longer
>> if he looks into other compiler vendors source code.
>>
>> IP laws are always a complicated issue.
>
> Unless you have an actual explanation as to why this would be the case,
> I'd simply regard this as FUD. I see how the viral nature of the GCC
> license might be a problem for that, but as far as LLVM is concerned,
> Walter would even be able to just rebrand Clang as DMC and ship it as a
> closed-source package. LLVM also doesn't require any copyright
> assignments, which might be an impediment for contributing any fixes
> back to GCC.
>
> David


As far as I remember he already had a few court cases caused by such kind of issues.

He is the best person to explain such issues, I would say.

--
Paulo
January 11, 2014
On 11 January 2014 11:58, David Nadlinger <code@klickverbot.at> wrote:
> On Friday, 10 January 2014 at 21:00:24 UTC, Paulo Pinto wrote:
>>
>> Because Walter wouldn't be able to work on his current job any longer if he looks into other compiler vendors source code.
>>
>> IP laws are always a complicated issue.
>
>
> Unless you have an actual explanation as to why this would be the case, I'd simply regard this as FUD. I see how the viral nature of the GCC license might be a problem for that, but as far as LLVM is concerned, Walter would even be able to just rebrand Clang as DMC and ship it as a closed-source package. LLVM also doesn't require any copyright assignments, which might be an impediment for contributing any fixes back to GCC.
>

Remember when I told you that LLVM devs reverted commits made by core GCC developers because apparently there was no explicit contribution by them to LLVM?  :-)