Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

What you described is mostly a problem of the standard library. Sometimes it's too low-level and it's better to use 3rd pary libraries for things like HTTP. There should definitely a way to create urls without having to check exception (ie. it would throw a RuntimeException that doesn't need to be checked).

Java 7 also lacks very useful features like lambdas, mixins, nested methods etc.

However, Java is a good choice for many projects, because it has fantastic tooling, lots of libraries and it's relatively fast. The tooling is really a huge advantage of Java. When I refactor Java code in Eclipse, I sometimes wonder how would I do this when it was Python (which I use for smaller projects).

I wish there was a language combining the pros of Java & Python...



Scala is such a language, at least to me it was a pain to go back to Python after learning Scala. And Scala's tooling is IMHO better than Python's these days, although still not as smooth as Java's.


I experimented with Scala for a while but got turned off by 1) very slow compilation 2) complicated and unelegant syntax.


Me too, mainly 1, which makes you feel the language is slow. Contrast with Go (a much simpler language, but feels modern because it compiles so cleanly).


Hmm, yeah, I see what you mean. I think Go does a pretty good job of being a middle ground between Java and Python, it has the static typing with all the tooling advantages it brings, without the annoying need to be explicit about everything. I think you'll like it.


I quite like Go but I see it mostly as a C++ replacement, not Java or Python replacement. Java has far better tooling. It also has quite weak type system (no gnerics).

Dart is closest to my ideal of a general purpose language.


Go tooling will likely get better as time allows IDEs / plugins to be written.

It remains to be seen if the Go language will grow significantly from one major release to the next, and how frequent any such changes will be. (it might stagnate, as well)

Sun / Oracle have demonstrated the last 10 years that they do not intend to improve the Java language itself (COBOL with separate compilation, user defined types, field accessors and subclassing is good enough for all!), but will only keep rolling out new "Enterprise" libraries / frameworks.




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

Search: