[isabelle-dev] NEWS: Dockable window "Find"

Makarius makarius at sketis.net
Wed Sep 18 23:07:48 CEST 2013

On Wed, 18 Sep 2013, Holger Gast wrote:

> Well, one more piece of information about Swing gathered. (Not very 
> useful though: like many people nowadays, I have switched to the much 
> faster and more modern SWT/JFace for my projects anyway.)

I count Eclipse/SWT also as a legacy thing. In any case this is not 
relevant for Isabelle/jEdit: at the very starting point of that project 
was the observation that GUI frameworks don't count, but editor 
frameworks.  Otherwise we could have done it like CoqIDE and connected 
Poly/ML directly to GTK+ (some people do that today for other projects).

Back then in 2007 we've had Netbeans and jEdit, which both happened to be 
based on Swing.  Netbeans as editor / IDE framework managed to get 
slightly ahead of Eclipse, but then stagnated (probably due to Oracle 
policy changes).  Isabelle/jEdit as IDE today does much more than Netbeans 
could have ever have done.

I personally ruled out Eclipse from the start, since I disliked its very 
approach and philosophy, but let it open to others to build on this 
classic IDE framework.  The Isabelle/Eclipse project from Newcastle has 
done that quite successfully based on the Isabelle/Scala infrastructure. 
(There are some GUI snags, so Eclipse/SWT is also not painless.)

What is also interesting: people in Copenhagen have now done an Eclipse 
front-end for Coq called "Kopitiam", which is also in Scala (not 
Isabelle/Scala), and uses legacy Proof General interaction mode of Coq (in 
its XML wrapping for current CoqIDE).  There is still no other choice for 
that prover ...

Anyway, if we look at the really big picture for IDEs today, IntelliJ 
seems to be ahead of anybody else.  I occasionally look around what they 
have, but their code base is really really huge.  So in a few years it 
will probably implode from its own gravity.

> PS: May I ask: if you just plug in my layout manager (just replace
> new WrapLayout() with new RetriggeringFlowLayout()), does
> it also take the same amount of time to converge?
> I believe it should, but some Swing optimizations may kick in
> since I schedule the re-layout by SwingUtilities.invokeLater().
> Would be just interesting to know.

I don't know.  Maybe you want to "just plug it in" and try yourself. On 
the JVM platform, every "just" can become a very long effort.

The quick experiments with Wrap_Panel so far look like for reasonable 
number of components (< 100) the layout converges fast enough.  We still 
have a few weeks left to see if serious problems arise.


More information about the isabelle-dev mailing list