Questionnaire

Chris Wright via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Wed Feb 8 23:02:44 PST 2017


On Wed, 08 Feb 2017 18:27:57 +0000, Ilya Yaroshenko wrote:
> 1. Why your company uses D?

You might have specified that this questionnaire is only for people who 
use D at work.

I use D for small utilities to help in development. For instance, I used 
vibe.d to compare performance with other frameworks when I had performance 
concerns.

> 2. Does your company uses C/C++, Java, Scala, Go, Rust?

We use Java, Kotlin, and some C/C++.

> 3. If yes, what the reasons to do not use D instead?

On the client side, we're building for Android. Some of it is native, and 
it would not be a natural fit to use D (minor modifications in Android 
platform code that's written in C/C++).

We use Swagger and Thrift for service definitions. Thrift supports D; 
Swagger does not.

We use AWS. There is no AWS client library for D and it would not be cost-
effective to implement one.

If we want people to learn a new programming language for the JVM, they 
probably know Java already, and the rest of the ecosystem is identical. 
With D, the ecosystem is entirely difficult.

Java has NullPointerException, while D has a segmentation fault. It's easy 
to catch NPE and harder to handle a segmentation fault, even if you are 
just trying to log and exit.

The "die on error" trend has me worried that it will be difficult to run 
services with reasonable uptime, and the people saying that we shouldn't 
even try to log anything in the face of an error worry me even more. I 
can't run systems in production if I'm not allowed to log errors. The 
runtime doesn't even promise to make an effort to let me catch an Error.

> 2. Have you use one of the following Mir projects in production:

No.

> 4. Have you use one of the following Tamedia projects in your
> production:

I've never even heard of them before. Have they ever thought of going into 
advertising?

> 5. What D misses to be commercially successful languages?

The backing of a large organization. The example of Go shows me that a 
language can become successful despite its technical attributes with the 
backing of a large organization.


More information about the Digitalmars-d-announce mailing list