4 ms·
There are many of us in the Go community who like Go the way it is. The last thing we want is another Java ecosystem, which feels like something designed by ar
by tomohawk 7y ago
There are many of us in the Go community who like Go the way it is. The last thing we want is another Java ecosystem, which feels like something designed by archonaut committee more than anything coherent. Better to not have generics than to have generics that are bodged into the language like they were in Java.
- KirinDave 7y agoWell I'm glad you're happy with things the way they are! But this doesn't necessarily mean we should ignore the folks who are not.
- eikenberry 7y agoThis is my biggest worry about the future of Go, that it will gain enough adoption at enterprise shops that we'll end up with another Java-esque ecosystem. So far it has seemed to have avoided that trap, but it is still a young language.
- KirinDave 7y agoI am ... Quite surprised to see folks arguing that Java has "too many" features. For a log time the problem was we couldn't get ANY new language features through committee and so we were resorting to outrageous hacks.
- eikenberry 7y agoI said nothing about Java features. I was strictly referring to their Ecosystem, which I found to be terrible (though it's been a couple years).
- RhodesianHunter 7y agoThe only people in my experience that complain about the Java ecosystem have limited experience with Java 7 or before and haven't done any real modern Java development in many years.
- tomohawk 7y agoI've been using Java since it was released, and (at the same time) Go for several years now. The amount of cognitive overhead in dealing with all the history that's baked into Java is really annoying. Things like the dated concurrency model, the overachieving in logging (and other) libraries (when one to use?), the poorly thought out I/O libraries, the crazy build tools and slow builds, ... It's always a relief to get back the the smoothness of Go.
- apta 7y ago> The last thing we want is another Java ecosystem, Which practically contains almost everything one can think of? Yeah, like that's not a good thing. Where's the golang equivalent of Hadoop, Spark, Vertx, Netty, Akka, etc.? Not to mention the Java standard library with it's new time package, and java.util.concurrent, and many more. > Better to not have generics than to have generics that are bodged into the language like they were in Java. Strawman fallacy. Not to mention that generics in Java are not botched, they made a tradeoff and it paid off quite well, just look at the number of existing JVM languages. That beings said, there is work being done to improve generics in Java even more.
- Thaxll 7y agoThe Java time package has been a disaster for 20 years until Java 8, before that everyone was using Joda. As for generics have a look at what C# does for "proper" generics.
- apta 7y agoI'm aware of what C# does, that's why I said it was a tradeoff. Compare the number of languages on the JVM to those on the CLR to see why they made this tradeoff. The JVM folks are working on improving generics even further in upcoming releases. I know about Joda time, that even another point in how mature the Java ecosystem is. There's no similar offering in golang.
- Const-me 7y ago> Compare the number of languages on the JVM to those on the CLR to see why they made this tradeoff IMO the main reason why people aren't creating more CLR language is unrelated to generics. You can compile many languages to CLR bytecode and never emit these ldelem/stelem/unbox.any instructions. The main reason is C# is good language, and it evolves fast enough. I don't believe Java developers deliberately crippled Java to incentivize third parties to develop more JVM languages.
- repolfx 7y agoJava Time is a renamed Joda Time with some improvements, from the same guy who did Joda Time. It's a pretty great example of Java being defined by its community actually.