|
Archives
D Programming
digitalmars.D
digitalmars.D.bugs
digitalmars.D.dtl
digitalmars.D.ide
digitalmars.D.dwt
digitalmars.D.announce
digitalmars.D.learn
digitalmars.D.debugger
D.gnu
D
C/C++ Programming
c++
c++.announce
c++.atl
c++.beta
c++.chat
c++.command-line
c++.dos
c++.dos.16-bits
c++.dos.32-bits
c++.idde
c++.mfc
c++.rtl
c++.stl
c++.stl.hp
c++.stl.port
c++.stl.sgi
c++.stlsoft
c++.windows
c++.windows.16-bits
c++.windows.32-bits
c++.wxwindows
digitalmars.empire
digitalmars.DMDScript
electronics
|
D.gnu - D compiler as part of GCC
Hi, folks,
I'm interested in creating a D front end for GCC that would be part of the GCC
codebase. My feeling is that a GDC that is part of GCC distributions will
likely have more life than one that must be updated whenever a new GCC release
comes out. As with linux kernel in-tree drivers being kept up to date, an
integrated GDC would tend to move forward as well.
To do this though, copyright on the code must be assigned to the FSF. This
means that even though the DMD front end sources are licensed under the GPL,
they cannot be directly used to write this front end as the copyright is owned
by DigitalMars. Everyone who contributes code must not look at the DMD
compiler source code to avoid accidentally contributing code illegally.
Therefore, this will be a completely new implementation of D.
The obvious disadvantage of doing this is that it will be a slow process to get
to a working D compiler. However, one advantage to the D world is firming up
and validating the language specification so that the language is not defined
by what the DMD compiler does.
My personal desire is to implement (and track) the 2.0 language since I would
like to see that feature set available through GCC. Second, by the time a
working front end becomes part of GCC, the 2.0 language will likely be complete.
One question I have (of many) is whether a different name should be used. If
this is called GDC there will be some confusion with the current GDC. What
thoughts do you all have?
In general is there interest in this project, especially contributing to it?
Thanks,
Jerry
Jerry Quinn <jlquinn optonline.net> wrote:
One question I have (of many) is whether a different name should be
used. If this is called GDC there will be some confusion with the
current GDC. What thoughts do you all have?
If the project is to replace GDC, then taking its name sounds good to
me. Otherwise, GCD (Gnu Compiler for D) is low-hanging fruit.
--
Simen
Simen kjaeraas Wrote:
Jerry Quinn <jlquinn optonline.net> wrote:
One question I have (of many) is whether a different name should be
used. If this is called GDC there will be some confusion with the
current GDC. What thoughts do you all have?
If the project is to replace GDC, then taking its name sounds good to
me. Otherwise, GCD (Gnu Compiler for D) is low-hanging fruit.
Truthfully, I would be reasonably happy with either GDC becoming vibrant again,
or
D becoming part of the official GCC tree.
GDC has been pretty idle, unfortunately. If D in GCC were to gain momentum,
then
I would hope to replace it, otherwise it probably won't matter if it has the
same name.
Jerry
Jerry Quinn, el 17 de enero a las 21:43 me escribiste:
Hi, folks,
I'm interested in creating a D front end for GCC that would be part of
the GCC codebase. My feeling is that a GDC that is part of GCC
distributions will likely have more life than one that must be updated
whenever a new GCC release comes out. As with linux kernel in-tree
drivers being kept up to date, an integrated GDC would tend to move
forward as well.
I think that if a D compiler is included with the official GCC
distribution, it would be a massive step forward for the language. It
would make it's adoption much easier since people tend to trust a lot in
GCC.
My personal desire is to implement (and track) the 2.0 language since
I would like to see that feature set available through GCC. Second, by
the time a working front end becomes part of GCC, the 2.0 language will
likely be complete.
If you are really going to do this, I strongly suggest that you make the
new front-end as back-end independent as possible, so it can be used by
other back-ends like LLVM. People is not very happy in general with DMD
front-end, so having a new front-end that's not tied to DMD's back-end
could be a huge win for other projects too. That could encourage third
party tools too, like code analyzers, or even make it suitable for
embedding in IDEs, etc. I think it would be best to even make the
front-end project a separated from the whole compiler.
One question I have (of many) is whether a different name should be
used. If this is called GDC there will be some confusion with the
current GDC. What thoughts do you all have?
I think too that if this compiler is intended to replace the current GDC
(I'm not convinced that's a good idea, maybe it would be nice to have both
front-end options), taking over the name is OK, otherwise a new name would
be necessary.
In general is there interest in this project, especially contributing to
it?
I'm *very* interested, not so sure I could contribute a lot though :(
--
Leandro Lucarella (AKA luca) http://llucax.com.ar/
----------------------------------------------------------------------
GPG Key: 5F5A8D05 (F8CD F9A7 BF00 5431 4145 104C 949E BFB6 5F5A 8D05)
----------------------------------------------------------------------
Agitamos toda la zona de la paleta al horno, vemos que una luz nos
atraviesa toda la zona intestinal...
-- Sidharta Kiwi
Jerry Quinn wrote:
Everyone who contributes code must not look at the DMD compiler
source code to avoid accidentally contributing code illegally.
Therefore, this will be a completely new implementation of D.
One question I have (of many) is whether a different name should be
used. If this is called GDC there will be some confusion with the
current GDC. What thoughts do you all have?
If you are doing a completely new implementation, you should pick a
new name for it. Something like the "Free D Compiler", or whatever.
(like "GNU Pascal Compiler (GPC)" vs. "Free Pascal Compiler (FPC)")
The obvious disadvantage of doing this is that it will be a slow
process to get to a working D compiler. However, one advantage to
the D world is firming up and validating the language specification
so that the language is not defined by what the DMD compiler does.
Is the language specification available under a more open license ?
(I was under the impression that it is not freely redistributable)
At least the source code is under GPLv1, even if also copyrighted...
--anders
Jerry Quinn wrote:
Hi, folks,
Hi Jerry
I'm interested in creating a D front end for GCC that would be part of the
GCC codebase. My feeling is that a GDC that is part of GCC distributions
will likely have more life than one that must be updated whenever a new
GCC release comes out. As with linux kernel in-tree drivers being kept up
to date, an integrated GDC would tend to move forward as well.
Yes, you are right.
To do this though, copyright on the code must be assigned to the FSF.
This means that even though the DMD front end sources are licensed under
the GPL, they cannot be directly used to write this front end as the
copyright is owned by DigitalMars. Everyone who contributes code must not
look at the DMD compiler source code to avoid accidentally contributing
code illegally. Therefore, this will be a completely new implementation
of D.
Well, things are not so "black or white". Walter is a very kind person and
i'm 100% sure he will release the copyright if there is a chance to have the
gdc frontend integrated in the gcc codebase.
The obvious disadvantage of doing this is that it will be a slow process
to get to a working D compiler. However, one advantage to the D world is
firming up and validating the language specification so that the language
is not defined by what the DMD compiler does.
It's the main part i'm fed up about D. No clear language specifications, if
you want it, you have to put your hands into the dmd frontend.
My personal desire is to implement (and track) the 2.0 language since I
would like to see that feature set available through GCC. Second, by the
time a working front end becomes part of GCC, the 2.0 language will likely
be complete.
This is the goal of all the people involved in the gdc project. However, a
not stable language specification (or worse, not existent) makes all this
work very hard to do.
One question I have (of many) is whether a different name should be used.
If this is called GDC there will be some confusion with the current GDC.
What thoughts do you all have?
What do you mean? do you wanna start another D frontend for gcc? Well, i
don't suggest you to start this way. A compiler is one of the most complex
software a human is able to think. Compilers need a group of skilled people
and, mainly, many years to be stable and to be production-friendly.
Since GDC was a dead project, me and Michael thought that we could help in
supporting that code and do enhancements. This leads us to make a GDC for
hosted on bitbucket ( http://bitbucket.org/goshawk/gdc/wiki/Home ).
If you are interested in gdc consider to join us and continue in supporting
the d frontend.
In general is there interest in this project, especially contributing to
it?
There is interest in this project of course, but real life works take all
the time sometimes. But with a large team of developers (and maybe a better
language specification) we would be able to produce and release a good D
compiler based on the gcc backend.
We are trying to align the current trunk of the project to lastest dmd
frontend and gcc backend. After we reach that goal we can start thinking to
further plans.
I'm here if you have more questions or suggestions :)
Thanks,
Jerry
--
Vincenzo Ampolo (goshawk)
http://goshawknest.wordpress.com
In general is there interest in this project, especially contributing to
it?
Did anything come of this and the ensuing discussions?
Steve
Steve Teale Wrote:
In general is there interest in this project, especially contributing to
it?
Did anything come of this and the ensuing discussions?
At the moment, Walter is considering it. Beyond that I don't know and don't
want to put words in anyone's mouth.
I've been playing with writing one on my own in the meantime. I fully expect
it to be throwaway at such time as the DMD front end is contributed to the GCC
project. But, it's interesting to do anyway and I'm learning more about the
front end of GCC in the process.
So far I've got most of the lexer and part of the parsing pass before semantic
analysis. That's the easy stuff.
Jerry
On Sun, 07 Mar 2010 21:25:11 -0500, Jerry Quinn wrote:
Steve Teale Wrote:
In general is there interest in this project, especially contributing
to it?
expect it to be throwaway at such time as the DMD front end is
contributed to the GCC project. But, it's interesting to do anyway and
I'm learning more about the front end of GCC in the process.
So far I've got most of the lexer and part of the parsing pass before
semantic analysis. That's the easy stuff.
Jerry
I'm trying - at a low effort level - to get the current GDC2 working with
GCC-4.4.3. There has been pretty substantial surgery in 4.4, so it is not
clear how to achieve the equivalent of the 4.3.4 GCC patches.
Steve
|
|