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

I've tried Go for some small stuff and read through "Programming in Go". I want to like it, but it just doesn't work for me. It's at an awkward position half way between C++ and Python. Knowing both C++ and Python, I don't see a convincing reason to use Go.

IMO, part of the reason C++ programmers aren't interested in Go is that C++ is, arguably, the most difficult language to learn. If you're really good with C++ you'll figure out most other languages fairly easy, and probably already know a few languages before going to C++. So I would expect most C++ programmers already have a "go to" scripting/interpreted, high level language that they know and like. And in that case Go just doesn't offer anything they don't already have.



Actually, I think this is the genius of Go. It has the a lot of the expressiveness of Python, but the static typing of C++. This makes it useful in projects that don't require the performance/sharp edges of C++, but that do require the discipline of a static type system.

> It's at an awkward position half way between C++ and Python. Knowing both C++ and Python, I don't see a convincing reason to use Go.


I don't think learning C++ would help you at all when trying lisp-like, functional or logic programming languages. With its single oop model it doesn't even help you with languages that have different or multiple object models.

You also have a static type system so dynamic types are another thing to learn about, as are lexical scope and closures.

After all the effort of learning C++ you've only really learned C++.


I wasn't really talking about the transferability of C++ knowledge to other languages. The amount of effort to learn C++ is greater than the amount of effort to learn most other languages. Whether that knowledge transfers to other languages is another matter altogether.

The amount of time to become a C++ expert is far greater than to become a Python expert or a Go expert. After spending a few years learning C++ spending a year learning Go doesn't seem like a big deal, so why not learn it?


I just don't agree with your statement "If you're really good with C++ you'll figure out most other languages fairly easily".

As I was trying to illustrate there are a wide range of language features available in other languages that C++ does not have anything remotely like.

It takes a long time to learn C++ not because the concepts are particularly hard, but because the implementation of the language is rather messy and the code you produce can easily do crazy things not apparent on the surface.


I code in both c++ and c# and switching between the two is so much easier. I don't even feel like I'm in a different language.


What's a multiple object model?




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

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

Search: