Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I don't see any reason to prefer Go to the D programming language. D achieves all the major claimed benefits of Go and yet has vastly more abstraction power and better type safety and error handling. The interest in Go is a mystery to me.


Is it really a mystery? It was created by some of the most well known computer scientists of the last several decades and was created by and for systems engineering at Google.


The interest in a language with even more features than C++ is a mystery to me.

If you read the linked article you will realize that the main benefits of Go are precisely from "features" that it omits. D takes almost exactly the opposite approach, and takes C++ and adds even more.


The lack of generic programming in Go is a huge deal. It's vital for modelling complex systems without a mess of runtime checks, and generally leads to clean and reusable designs.

  With D, you can get very close to the generic ideal, "This
  is the last implementation of linear search I'll ever need
  to write." Or binary search. Or stable matching. Or
  Levenshtein distance. I searched around, and it looks
  like D is the only language offering Levenshtein distance
  on UTF strings without copying the input and without
  special-casing per encoding. D just has the abstraction
  power to deal with variable-width entities efficiently
  and within a unified definition (that works with many other
  inputs, such as linked lists of floating point numbers, if
  you want). It's really the last Levenshtein implementation
  I need to write. Now, you may not care about that particular
  algorithm, but there are benefits of that power for many
  structures, algorithms, and design artifacts that might be
  important to you.
http://www.informit.com/articles/article.aspx?p=1621867




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: