Go vs. D [was Re: Rust vs Dlang]

Paulo Pinto pjmlp at progtools.org
Sun Mar 17 01:17:30 PDT 2013


On 17.03.2013 09:05, Russel Winder wrote:
> On Sun, 2013-03-17 at 08:59 +0100, Paulo Pinto wrote:
> […]
>> However the Go guys just don't agree with the progresses made in
>> language abstractions in the last decades, which in my view is a plus
>> point for D and Rust, and made me stop caring about Go.
> […]
>
> So what are the features that Go is ignoring that D has?
>
> An article on this would be good marketing for D just now.
>

The first known one is that Go is the only strong typed language to 
eschew generics in the 21st century.

For the rest, copying from my discussion on Lambda the Ultimate about 
C++ developers not jumping into Go 
(http://lambda-the-ultimate.org/node/4554#comment-71504):

- exceptions;
- enumerations;
- generic types;
- direct use of OS APIs, without the need of writing wrappers;
- currently only static compilation is available;
- due to static compilation only model, there are issues with 3rd party 
code;
- no support for meta-programming;
- rich set of available libraries;
- the PR about go routines and channels, usually forgets to mention that 
similar features do exist as libraries for other languages


I know you can fake enumerations with typed consts, but it is not the 
same thing as real enumerations.

My point about direct OS APIs is that while D and Rust follow the 
approach used by other languages where you just declare bindings, Go 
forces the use of the CGO tool and a C compiler that speaks Go ABI.

Their talk about fast compilation is also quite effective with young 
developers that did not grew up with Modula-2 and Mac/Turbo Pascal or 
using other compiled languages with modules, so they think Go is the 
first compiled language to offer that.

Feel free to destroy. :)

--
Paulo


More information about the Digitalmars-d-announce mailing list