Hacker News new | ask | show | jobs
by SeanLuke 5432 days ago
There are serious fifteen year old reported errors in java.util.Random which have never been fixed and have finally been declared WONTFIX. Ten years ago I reported that ArrayList's get(), set(), and add() methods were non-inlineable (!) and could be trivially repaired with a single line of code: this was never fixed until recent versions of HotSpot which finally obviated the issue.

We're talking core classes here. So I don't have a lot of faith in the bug reporting process.

2 comments

The java classes have always had major warts and no one in charge has ever seemed to care.

My personal bugbear: java.lang.Object depends on hundreds of classes including, among other absurdities, the Turkish locale (IIRC). This was about 13 years ago. Of course, the bug was eventually marked WONTFIX.

14 years ago, I adopted Java because it was a beautiful escape from the warty giant that C++ was becoming. Sun sat on it's laurels and, like many others, I moved on to Python.

Now Java is the new C++: unpleasant and to be avoided when possible.

Could you elaborate?
Sorry for the late reply. Not sure which you wanted details on:

- java issues / sun not caring - there are examples above by SeanLuke, gojomo and myself

- java.lang.Object depends on hundreds of classes - violates basic design principles of modularity and avoiding cyclic dependencies

- "Sun sat on it's laurels..." - apart from ignoring existing issues, they also ignored requests for language enhancements (e.g. dynamic language support, covariance, etc) for a long time causing many developers to give up on java for web development and move to python & ruby

I hear you, brother.

I liked how minor-update 6u23 finally 'fixed' a ~10-year old bug in GZIP member handling, in a manner that significantly changed behavior (breaking workarounds for the prior bug), and introduced new bugs in GZIP header handling. (I'd supply the bug number, but their bug database is in another one of its many-minute lulls where login and search are impossible.)

My favorite popular, decade-languishing feature request is this one for verbatim multi-line string literals:

http://bugs.sun.com/view_bug.do?bug_id=4472509

This 'syntactic sugar' casually dismissed by Mr. xxxxx@xxxxx could by now have saved thousands (maybe tens of thousands) of hours of developer time, futzing with concatenation and escaping and related bugs.

Another 10-year old issue which has probably cost thousands of developer hours:

String.substring() leaks memory

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4513622