I don't know what he means by it, but I'd make the same statement. If I did, I'd be referring to a number of things. First off, the basic Swing and AWT UI stuff all suffers from a number of issues, but core to the language is the way interfaces/anonymous inner classes proliferate necessarily. Core user-interface concepts like event dispatching/handling really benefit from language features built with them in mind. Portable functions on some level.. like C#'s delegates, or any of the closure proposals..
And then yeah, all of the alternatives.. defining UIs in XML, literally ANY of the Java web frameworks. They all suffer from core problems: Writing Java code can be frankly kinda slow and cumbersome compared to other (more dynamic) languages. That's a totally reasonable tradeoff for the benefits you get back when, say.. you're building out some business logic, or implementing a network protocol... but in the land of declarative user-interfaces (including web ones).. more often than not the frameworks mortgage away loads of the compile-time niceness without giving you the benefit of a dynamic language framework's velocity or brevity.
I do think writing user interfaces (of any kind) in Java pretty much sucks. I've thought for some time that the big win here would probably be to see more tools that allow you to write your presentation layer stuff in a dynamic language that runs on the JVM.
So he is unhappy with the libraries and he's building a new language to fix this ? Some of the problems and ingrained at the JVM level (broken generics implementation for instance) so creating a new language and new libraries cobbled over Java ones won't really fix the problems.
7 comments
[ 2.7 ms ] story [ 24.3 ms ] threadhttp://www.reddit.com/r/programming/comments/goxux/redhat_an...
I'm curious what he really means by this. Language-level GUI implementations? Or perhaps he's referring to language support for validating user input.
The best way to do GUI is STILL Windows Forms + a great visual designer like Visual Studio.
And then yeah, all of the alternatives.. defining UIs in XML, literally ANY of the Java web frameworks. They all suffer from core problems: Writing Java code can be frankly kinda slow and cumbersome compared to other (more dynamic) languages. That's a totally reasonable tradeoff for the benefits you get back when, say.. you're building out some business logic, or implementing a network protocol... but in the land of declarative user-interfaces (including web ones).. more often than not the frameworks mortgage away loads of the compile-time niceness without giving you the benefit of a dynamic language framework's velocity or brevity.
I do think writing user interfaces (of any kind) in Java pretty much sucks. I've thought for some time that the big win here would probably be to see more tools that allow you to write your presentation layer stuff in a dynamic language that runs on the JVM.