On Tuesday, 15 August 2017 at 20:33:18 UTC, Johnson wrote:
On Tuesday, 15 August 2017 at 03:37:39 UTC, rikki cattermole wrote: But then that only helps with one specific instance. D is full of language features, I do not see why everyone is so against them. Without them, D would be empty, nothing, and no one would use it. Adding language features should be see as something good, cause without them, we wouldn't get anywhere.

Its an important challenge of software development, and a number of articles out there about it.

https://www.google.com/search?q=the+cost+of+features&ie=utf-8&oe=utf-8

At first glance I wasn't finding anything which uniquely tackles compilers and languages.

Backwards compatibility isn't just for programming languages but can be more important.

A good UI can help a user with complexity. So does consistency. Adding a syntax for special meaning can be difficult to remember. My personal example is properties in C#. The syntax is straight forward and clean, but only recently have I been able to remember how to write one: ReturnType Name { get { return a; } set(value) { a = value; } }

As for your specific suggestion I think it would be nice at times but the complexity you haven't specified is how do deal with ambiguities if two modules provide the same symbol name.

D may have a number of features which C++ doesn't and visa versa, the complexity of the language for C++ to have those features means I work with D and not C++.

Reply via email to