Hacker News new | past | comments | ask | show | jobs | submit login

Go is for distributed systems. It can be for system programming, depending on what you mean by system programming.

I would personally not assimilate system programming to embedded.




> Go is for distributed systems

Go is for distributed SERVERS.


Yeah, Go is pretty bad at distributed systems programming, well, idiomatic Go. It can be tolerable if we throw away all those poorly designed idiomatic networking packages and multithreading. But it's definitely not for distributed systems.

Its niche is more in boring servers and command-line apps where an interpreted language would be too slow, too memory hungry or harder to ship, where you can get away with only the simplest concurrency, but still prepared to deal with time-consuming concurrency bugs. Like a typical commercial CRUD app, a command line automation and data processing utility, a quick one-off program.


Or in simpler terms.

Any server app where python/perl/ruby are too slow, and you can't use java/C#/C++ for some reasons.


And even then, it's ok. Hell how many places has Java been embedded?



I feel maybe my comment was misunderstood. I was saying that a GC doesn't disqualify a language from systems work, even embedded, using java as an example...


Or billions of places to talk in numbers.

Java is running on so many smart cards, TV and set top box nowadays. It's almost everywhere.




Join us for AI Startup School this June 16-17 in San Francisco!

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

Search: