On Wednesday, 29 October 2014 at 04:37:47 UTC, Walter Bright wrote:
http://www.codergears.com/Blog/?p=421

This is interesting as it relates to D's choices:

1. No common build system ,Visual Studio, make and CMake are the most widely used

D - no change.

2. Namesapces not widely used

D - forces use of namespaces, i.e. modules

3. Inheritance and polymorphism are widely used

It's my impression that D uses a lot more parametric polymorphism (i.e. templates) than virtual inheritance.

4. Design Patterns not widely used

Don't know if D changes that.

5. No common frameworks for the GUI, database access and logging needs.

Same for D, though std.experimental.logger may change that.

6. Smart pointers not enough used

The general problem with SP is you have to proactively use them, they are not the default. D's gc pointers are the default.

7. STL widely used , not boost

Phobos' ranges appear to be widely used.

8. Exceptions not widely used

Exceptions are embraced in D, perhaps even excessively :-)

9. For many projects two or more ways used to represent a string class

D's strings are built-in to the language, which is a huge win for consistency. Even modern C++ suffers from two distinct string types.

10. New created projects use more the new C++ standards

As they should.

I do like C++, even with its warts, as my bookshelf can attest.

However, this is the sad reality of the language. In which what ANSI/ISO give us and what we are allowed to use are two different realities.

Almost everything from the standard that makes C++ modern, is frowned upon in most companies, leaving it little more than a safer C.

This was well shown at CppCon, with one corner showing what cool stuff C++11 and C++14 bring to the table, and the other corner showing laundry lists of forbidden features.

Personally, this is the reason I enjoy C++ in projects under my control and am an happy JVM/.NET camper at work. It just wouldn't be the language I enjoy.

Now with Java 9+ AOT compilation, .NET Native, Swift, Go, D, Rust, Objective-C coming into the picture, C++ will be driven further down the stack it seems, regardless of what the committee might say.

Which in the end might be good opportunity for D.

--
Paulo

Reply via email to