Why is `scope` planned for deprecation?

Walter Bright via Digitalmars-d digitalmars-d at puremagic.com
Sun Nov 16 10:36:02 PST 2014


On 11/16/2014 10:27 AM, "Ola Fosheim Grøstad" 
<ola.fosheim.grostad+dlang at gmail.com>" wrote:
> Returning to programming languages: if I cannot implement 100% of my design with
> a language then it is a non-solution. 85% is not enough.

You can do anything with a language if it is Turing complete.


> In business applications people sometimes have to settle for ready-made 85%
> solutions and change their business practices to get the last 15%, but that is
> not good enough for systems programming IMO. That's how you think about
> frameworks, but not how you think about language design (or system level runtime).

Be careful you don't fall into kitchen sink syndrome. Add enough features, and 
the language becomes unusable. Features are almost never orthogonal, they always 
interact and interfere with each other. This applies to all engineering, not 
just languages. There are no 100% solutions.

For example, D doesn't support multiple inheritance. This is on purpose. Yes, 
some C++ programmers believe D is badly broken because of this. I don't at all 
believe it is unreasonable that one should make adaptations in design in order 
to use a language successfully.

After all, D is explicitly designed to be a "pragmatic" language.



More information about the Digitalmars-d mailing list