Hacker News new | ask | show | jobs
by sjs1234 4558 days ago
Ack ... I'm largely ignorant of the details of go other than its original positioning. Do the semantics of go constrain gc implementation in such a way that it precludes low latency? Or is it just not a focus of the implementors?
2 comments

Although Go has channels for civilized communication between goroutines, the language does not have a native notion of what data is owned by which goroutine, which pretty much forces garbage collection to stop the whole world.

This, together with pervasive mutability, means that communication using channels is merely a convention that can easily be circumvented.

>I'm largely ignorant of the details of go other than its original positioning

It is a faster python with a very primitive type system tacked on. I don't know how they ended up there from their original idea of a systems language, but they did.

> It is a faster python with a very primitive type system tacked on.

And concurrency primitives in the core language. (In a properly designed language, these could have been made part of the standard library, though.)

And worse error-handling facilities than the original Python.