7 ms·
> abstraction/polymorphism, concurrency and dependency management which are all simpler and clearer in Go than in Java Really? A lot of copy/pasted code, gener
by tmpxkdks 10y ago
> abstraction/polymorphism, concurrency and dependency management which are all simpler and clearer in Go than in Java
Really? A lot of copy/pasted code, generics replaced with casts on empty interfaces, poor support for collections, only very primitive concurrency tools, and so on...
I can understand that simplicity is good for small CLI/network tools, but it is hardly an alternative for really big applications where Java is vastly used
- Thaxll 10y agoYour big application shouldn't be that big first?
- jeremiep 10y agoSo you're saying we shouldn't have operating systems, browsers, video games and all that good stuff? Most actual engineering is very far from writing a dumb server for yet another CRUD app :)
- Thaxll 10y agoWhat I'm saying is Golang is a recent programming language so it works best when used for multi tier/services, not to create a giant monolithic Java app that has a huge number of loc.
- jeremiep 10y agoWhat does Java have to do with big monolithic apps? I think you're confusing complex application domains with bloat. Go is supposed to be a systems programming language. That means a very, very wide range of possible domains, where for many of them even network latency is unacceptable. For example, Photoshop would have a terrible user experience if it wasn't the monolith it is. A game engine wouldn't go above ~20FPS (even 60FPS games have a network loop that is capped around 20FPS). If I can't do systems-level programming in Go, what's its advantage over real systems languages or higher-level languages then? Especially when you consider what Go offers (CSP) comes in opt-in libraries in many other languages. I feel like Go should be put in the same category as C# and Java. They're just above systems languages but just below scripting languages; giving you the worst of both worlds. Not bare-metal, but also not that productive.
- pjmlp 10y agoJava does run bare metal and there are commercial JDKs with real-time GCs. PTC is one such those vendors, http://www.ptc.com/developer-tools/perc http://www.ptc.com/developer-tools/perc Go might eventually be used in such scenarios, but the toolchain is not yet there.
- coldtea 10y agoThat depends on business needs, not what some programming language designer thinks.