Hacker News new | ask | show | jobs
by rwj 5086 days ago
Despite the comparisons to C and C++, Go is not really a replacement for either of those languages. Each supports features that are not found in Go, and that are necessary for certain applications.

Go is more of a replacement for Python, Ruby, etc. The level of abstraction is very similar. The design of interfaces provides duck-typing. Obviously, Go is not exactly equivalent, but I find that Go is, in many ways, more similar to dynamic languages than it is to either C or C++.

2 comments

This (among other topics) comes up frequently in Go discussions.

No one should say that Go is a replacement for C/C++ for all projects, however, it could be argued that most new, typical projects could be used with Go as opposed to C/C++/Python/etc.

There must be very few languages in the history of programming languages that could be considered complete replacements for others and that does not take anything away from those languages.

What would be such cases?

If you are thinking about writing operating systems, there are quite a few research operating system written in GC enabled languages as proof of concept.

If you are talking about the amount of control over the machine, or the set of abstractions available to the programmer, then I fully agree with you.

D or Rust would be a better choice, eventually.