6 ms·
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 domai
by zedzedzed 14y ago
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#?
- mhd 14y agoFrom 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.
- zedzedzed 14y agobut still, i could go some degree low level, right?
- mhd 14y agoSure. 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...