On Friday, March 27, 2015 16:03:01 Walter Bright via Digitalmars-d-announce wrote: > On 3/27/2015 2:47 PM, weaselcat wrote: > > On Friday, 27 March 2015 at 20:58:44 UTC, Walter Bright wrote: > >> On 3/27/2015 1:35 PM, weaselcat wrote: > >>> there's a difference between minimalism and blatantly not adopting core > >>> advances > >>> in language design over the past 40 years. > >> > >> Yes, and there's also a difference between gratuitous complexity and > >> finding > >> the underlying simplicity. > >> > >> It's a tricky thing finding the sweet spot. > > > > I don't disagree, but Go is definitely not in that sweet spot - it's > > crippled by > > its benevolent dictators for the sake of being crippled. > > I tried to program in Java, and found it went too far in the simplicity > department. I haven't programmed in Go, but it has also gone too far for my > taste. I just don't want to program that way anymore. > > I am not going to claim that D has hit the sweet spot, either, but I'd rather > err on the side of having the power I want.
Exactly! I'd _much_ rather have a language be a bit too complicated than too simple - especially way too simple. And if I wanted simple, I'd program in Java, but I don't want to simple - not at the price of power anyway - so I don't program in Java if I can help it. And I have stayed away from Go for the same reason. The more I learn of it, the clearer it is that its design goals and the audience that it targets is at complete odds with what I'm looking for. From what I've seen, I'd expect your average Go programmer to dislike D, and your average D programmer to dislike Go, because they seem to be at completely different ends of the simplicity vs power spectrum. Of course, it's nice when a language can be powerful without adding a lot of complexity in the process, but I'd much rather have to worry about some extra complexity than not be able to do something in a language. For instance, in the case of Java, it's not even possible to write a swap function in it! And that doesn't even get into the more complex topics like RAII or code generation. I'll take power over simplicity almost every time if that's the tradeoff (though obviously, that can be taken too far if you're not careful). Personally, I'm not sure that much is gained in pitting Go against D precisely because they're so different that they're likely to appeal to completely different sets of people. - Jonathan M Davis