Jonathan, we have chosen to support Swing since we wanted to have a UI
framework with a Scala-esque API that is usable right now.
Before we started the wrapper, I have been developing a scene
graph-based framework that uses concepts from functional reactive
programming (FRP) instead of listeners. This even goes beyond what
JavaFX supports today. Unfortunately, I have been slowed down by various
things lately. While the FRP layer is much more stable than before, the
UI still needs a lot of work. I do realize that this is not something I
will be able to continue on my own, hence my focus for the rest of year
will be to bring it to a state where I can open up the code and others
will be able to participate in its development. It is a pretty ambitious
project though, and I can't say when and how experimental it will be.
On a side note, the Java platform right now lacks a lot of things for
modern UIs, such as cross platform, efficient graphics hardware support
that is exposed in public APIs as well as modern media APIs. I really do
hope this will change in the future, but as of now, we have to do a lot
of things on our own. I am also looking forward to Scala on MSIL, since
it seems to be a better platform for graphics related things, but again,
unfortunately not cross platform.
Ingo
Jonathan Edwards wrote:
> Scala is an impressive and forward-looking language. Except for those of
> us who need to build a UI. Why is the Scala community investing in an
> old-fashioned UI like Swing? Swing just doesn't cut it in the modern
> world of Flex/Silverlight/JavaFX. These support a declarative scenegraph
> instead of procedural rectangular composition. F#+Silverlight has that
> today. The obvious solution is to wrap JavaFX's internal API's to enable
> its usage from Scala. But I can find no evidence that anyone is doing
> that, perhaps because Sun is not supporting those interfaces, and
> actively breaking them. There is a preliminary effort
> <
http://www.jroller.com/aalmiray/entry/fxbuilder_0_1_alpha>in Groovy. Or
> perhaps give up on Sun and build a portal to Flex. One way or another,
> something beyond Swing is needed to build state of the art UI's with
> Scala. It is the only thing stopping me from adopting Scala.
>
> [There is no point in debating the merits of Swing here. The fact is
> that developers have been voting with their feet for a long time, and
> even Sun is investing in an alternative now. Whether fairly or not,
> Swing is now a dead end.]
>