Skip to content

Comment on The Next Big Programming Language You’ve Never Heard Ofparent

Comments

Right! momentum is the most technically relevant quality of merit. Lets have a wholesome and fulfilling discussion of that aspect in particular. If that fails, lets discuss semicolons, and braces and make this HN story very meaningful and informative. After all that is the kind of discussion I come here for. If an article is crappy lets make the discussion around it crappier still. Shudder at the thought that a discussion could be stimulating even if based on an article less than stellar. Low and middle brow, here we come.

Ha! you are fun, searching through my comment history and downvoting old comments still downvotable. Whatever floats your boat.

Unfortunately, technical merit doesn't make anything "the next big thing". High momentum for a prolonged period of time does.

Momentum means that things like tooling, libraries, documentation and frameworks are being built. Even if D is 'technically' better (whatever that means) than Go or Rust or whatever other language you want to compare it to, a language doesn't exist on its own, but inside a larger ecosystem. And the number of people using/contributing to/being employed to work on Go/Rust/Java/C#/Python/Ruby/etc. means that the D language's benefits over those other languages may not be enough to overcome the ecosystem advantages that come from "momentum."

But yes, instead of acknowledging that there's a valid point there, let's just accuse everyone who lives in the real world where you actually have to USE a language, not just admire its technical merits, of being low and middle brow.

But the title doesn't say "of merit" it just says "big."

I imagine a language needs a certain rate of adoption to maintain the amount of programmers actively coding in that language. I feel like the term "momentum" accurately encompasses this idea.

Lets talk about Justin Bieber!

I don't understand why you invoked the name of a Canadian popstar. There is no chance of such a comment adding to the discussion.

There is a strong argument to be made that software profession does have some resemblance to pop music culture. "[Pop culture] it has nothing to do with cooperation, the past or the future — it's living in the present." Alan Kay 'made this rather salient observation a while back and the more I think about it the more truth I find in it.

I'll bite: a relevant technical question would be: is D really that much better than C++11 that you should abandon C++ (with all of the consequences that would have on tooling/libraries/etc.)?

I think D made more sense pre-C++11.

That is an excellent question. There is really a lot of cross-bleed between C++11 and D. In fact if not for anything else D was good competition to wake the C++ giant up into doing something about its deficiencies and backport as many D features as possible. I think this will continue to happen and and I think both the languages will benefit technically from this dynamics.

As for, should one abandon and existing C++ project and rewrite in D. Probably a bad idea, such a thing would require strong arguments. On the other hand for some project that is beginning now, I would say its evenly matched. The possibility of abandoning a lot of the C++ cruft and legacy is not something that should be ignored. Whether that compensates for the reduced maturity of tooling as compared to C++ has to be decided on a case by case basis, and this question is going to be a perennial question that would afflict the adoption of any new language. Its hard to have authoritative answers for this. That said I am looking forward to some improvements in D, better garbage collection, better separation of functions in the std library that uses garbage collection, getting the runtime memory requirements down for compiling D code that uses a lot of CTFE, and well if you could add sum types and pattern matching and efficient fibres/coroutines that would be very nice. I think fibres would be a tough one if one has to maintain portability and compatibility with C libraries.

Having used both, I'd say yes. C++11 does some wonderful things, many many improvements that were a long time coming, but D put those improvements into the core language and their standard library. This makes D much more readable and hackable than C++11. Not to mention the metaprogramming support is significantly easier to use (though not more powerful, as they're both technically turing complete).

D's metaprogramming is significantly more powerful. For example, string literals can be template arguments and can be manipulated at compile time and turned back into D code.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.