News for hackers. Stuff that matters.
Re:Ask HN: Is go a system programming language or a web lang... by zedzedzed on Monday August 13, 2012 @04:48AM (#4375006)
So can you tell me, what kind of tasks are best solved and evaluated in go? Is it a low level lamguage like c, or does it find best use in javascript like domain? Or is it like java/c#?
Re:Ask HN: Is go a system programming language or a web lang... by mhd on Monday August 13, 2012 @10:03AM (#4375905)
From a use case perspective, I'd put it in the Java camp. Can do low level, although probably not the best choice for really down-to-the-metal stuff (if you really need all the optimization you can get and don't want to deal with GC). Due to its pretty decent library support and compilation speed/build system, it's also a bit more suited to application where you might reach for a scripting language, as turnaround doesn't suffer too much. There's also a pretty strong concurrency support, using the CSP approach.

So no really narrow sweet spot. A good language for general network programming, which might include some framework web stuff, but also could involve writing your own custom servers and consumers.

There's probably a better language for each individual task, but go is quite solid at a wide spectrum of tasks. Good community, too, if a bit fanboyish.

Re:Ask HN: Is go a system programming language or a web lang... by zedzedzed on Tuesday August 14, 2012 @02:25AM (#4379668)
but still, i could go some degree low level, right?
Re:Ask HN: Is go a system programming language or a web lang... by mhd on Tuesday August 14, 2012 @05:20AM (#4380044)
Sure. It has signed and unsigned numeric types with specified sizes, and the "unsafe" module provides some alignment and even pointer arithmetic capabilities if you really need to tell the computer everything.

I'd just except the very end of low level stuff from it, mostly due to maturity and GC issues, so it wouldn't be my choice of language for a embedded real-time situation. If you're talking web server/3D game low-level, it's fine.

To me, go looks like C programmers copied Modula-3, whereas Java was Cobol programmers copying Modula-3...