2003-09-11: There are always things you want to fix about the language you are working in.
Dan Tull and I were talking today, and I decided I would finally make a list. Note: this page is
just my whiteboard notes. I plan to add description and discussion about these to make them more
- Numbered enum type for array indexing.
- Ability to access enums outside of class that defines it.
- Xith3D to be officially supported with JOGL, LWJGL, and DirectX bindings.
All should support Swing and fullscreen resize.
- Line numbers or code to be displayed where exception occurred.
- String concatenation to automatically use StringBuffer.
- Improvement of Ant.
- Ability to terminate threads or running applications from console.
- Networking abstraction for NIO for UDP or TCP.
- The death of JSP taglibs. How many abstractions of HTML do we need?
2006-02-17 : Now that's an interesting list. 1) Java 1.5 enums have an ordinal method so they can
be used to index arrays. The ability to auto-unbox an enum to an int might be interesting.
2) That's possible - just declare the enum to be public. 3) That's a library issue, not a language
issue. 4) Line numbers will be displayed if you compile with debug info turned on. Code can't be
displayed unless you bundled the source code with the compiled class (rather bloaty) or added some
method of specifying the source code path (and there are plenty of debuggers that take care of that
already). 5) String concatenation always uses StringBuffer (or StringBuilder in Java 1.5) unless
the strings are constants and are concatenated at compile time. 6) Ant is a third party library,
not part of the language. Plus you didn't say how you wanted to improve it. 7) That's an OS issue,
and can be done with existing tools. Terminating a thread in an app has serious consequences and
is not something to be done lightly, but it is currently possible. 8) NIO is an abstraction that
supports UDP and TCP. There are libraries that are even more abstract, like Java Spaces and Java
Message Passing. 9) Again, that's a library issue, not a language issue. Or, if it is a language
issue, the language is not Java. :) We'll know we have enough abstractions when people stop wanting
to create more. :)