7 ms·
Merging In The GNU D Language Compiler To GCC
- aklein 15y agoI'd be so excited for D to gain wider adoption. One area in which it really shines is in metaprogramming (compile-time code generation) that is such a headache in C++. http://www.digitalmars.com/d/2.0/templates-revisited.html http://www.digitalmars.com/d/2.0/templates-revisited.html
- feb 15y agoReading the thread, it's surprising how much work is still needed to merge the D frontend (GDC) into the GCC project: * Assign copyright to the FSF which requires contacting all authors including those who are MIA. * Update the code to the GCC coding conventions * Submit for review patches to the GCC core that where shipped with GDC and get them accepted * Finding a co-maintainer * Promise to continue to maintain the code * Implement naked functions attribute * Convert the testsuite to Dejagnu * Downgrade the zlib library used by GDC or upgrade the one in GCC Those are all reasonable requirements from the GCC project, but impose some extra work for the GDC maintainers. Cheers to them for biting the bullet.
- ggchappell 15y ago> Assign copyright to the FSF which requires contacting all authors including those who are MIA. What for? GDC is distributed under the GPL. Isn't it kind of the whole point of the GPL, that this kind of thing can be done without having to ask for special permission?
- r4vik 15y agoonce D is in GCC does that mean most of the rationale of Go(lang) is gone, in that both D and Go are supposed to be non-shitty C++. Now I don't need to download another compiler to write D and I can use c libraries with it, I don't think Go has much over D in order to make me go to the effort of installing a Go compiler.
- nl 15y agoNo. The concurrency constructs (Goroutines) in Go are different and quite unique (I think D offers a number of models, but mostly pushes you towards Actors). Go has simplicity as a much higher priority than D does. This thread might be useful: https://groups.google.com/forum/#!topic/golang-nuts/8k59RgkeJ6s https://groups.google.com/forum/#!topic/golang-nuts/8k59Rgke... They are both interesting languages, but you might as well say that because C++ and Ada are in GCC the rationale behind Go has gone.
- r4vik 15y agoThat's assuming you care about concurrency in a low-level systems programming language. If my problem space requires concurrency I'd use clojure or erlang. I guess if you're interested in one language for everything then maybe Go is better.
- burgerbrain 15y agoGo is not meant to be a low level systems language... it is meant to be a systems language useful for implementing services... something for which you better be caring about concurrency for. Erlang really is the best language to point at and say "why do we need this new one", though doing that in the first place is stupid.
- william42 15y agoIsn't Erlang the oldest language out of the ones we're talking about?
- cenuij 15y agoI don't follow you on this. You could just as well say; since Go is already in GCC I don't need another compiler to write Go and I don't need to write any D, or C++ or... In any case D and Go are very different beasts
- r4vik 15y ago
- Nelson69 15y agoI think this is good news, if it all happens. There are some hurdles though. D have always had a nice look about it, a good reliable, predictable, open compiler is a huge step to greater acceptance.