On Saturday, 29 September 2012 at 17:03:33 UTC, Peter Alexander wrote:
I'm sure most people here have seen similar arguments against D.

The complaint I've seen in a similar vain have been, "D is too complex" "it has everything and the kitchen sink" "if someone asks for it, it gets added"

And all but the last one is true. These are valid concerns and should not be dismissed as "people complaining to complain." Attempts to explain that to simplify the language introduces complexity to the code may fail. But the concern is not any less valid.

What is more annoying is that the level of understanding the complexity is usually attributed to that of C++. I grasp meta programming to a fairly decent degree, but I fail to read and understand that demonstrated in C++. I have very limited experience with C++ and almost no familiarity with templates (outside of the overlap with D). The syntax makes a huge difference! And with such clean syntax I guess our semantics is cleaner too.

A similar parallel I may have identified is Go return values. These are compared to those used in C. But if I picked up on this correctly, errors codes must be explicitly ignored. In which case I think of checked exceptions, except now every call is made with a try.

As you can see I am trying to apply experience I have with other languages to conform an understanding of the experience I'd get from Go. It doesn't mean it will be exactly correct, but this is how we efficiently eventuate things. If I have only ridden roller coasters that go upside-down, if asked whether I would enjoy one that doesn't go upside-down, I can apply my knowledge of the time spent not being upside down for those that do and make a best guess if I would find it fun/scary.

Reply via email to