gui suggestion

Jan Hudec bulb at ucw.cz
Mon Sep 19 08:38:39 BST 2005


On Sat, Sep 17, 2005 at 12:18:53 -0400, Derrick Hudson wrote:
> On 9/16/05, Jan Hudec <bulb at ucw.cz> wrote:
> > On Fri, Sep 16, 2005 at 14:08:46 +0200, Matthieu MOY wrote:
> 
> > Anyway, I am thinking about a bit broader thing for a while now. The
> > user interfaces of many version control systems are very similar -- all
> > have commit, some form of checkout, status, diff, most have merge. Thus
> > it should be possible to factor out quite a bit of glue between those
> > user interfaces and the version control systems.
> 
> See eclipse for an example that this idea really works.  They have a
> Team UI that various plugins can implement/extend to integrate with
> whatever version control system you want.

Yes, I know.

On the other hand I have failed to understand that API (I don't know
Java and I've not spend too much time with it though) and when I look at
Subclipse, it's just HUGE. The whole SVK, which is a subversion client
on top of subversion libraries, is some 13kloc(perl), while Subclipse,
which should be roughly the same complexity, is some 50kloc(java) IIRC.

To me it seems that either Java is not actually a very expressive
language, or that the API is on the wrong level -- or most probably
both.

> > I believe it's not so speed-critical, that it could well be in python.
> > Actually it _should_ be in python, so it's developed reasonably fast and
> > reasonably refactorable.
> 
> The operations are quite I/O bound, so the overhead of an interpreter
> is not a problem.  Again see eclipse (it's ssh and cvs implementation
> is all coded in Java).

Java, being strongly typed and JITed is still quite a bit faster than
python. Psyco may make some difference, but they don't currently have a
working psyco on Shootout.

For sake of development speed, python and perl are the only reasonable
choices. I'd certainly need bindings for Gtk and Gnorba/Bonobo for Gnome
integration, binings for Qt and DCOP for KDE integration and ability to
run the code from vim (for vim integration, of course). Ablity to run
call both perl and python code directly is a big bonus (perl can call
python and can make python call back to perl, but I am not sure it will
work when python is top-level)

--
						 Jan 'Bulb' Hudec <bulb at ucw.cz>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20050919/bc65d035/attachment.pgp 


More information about the bazaar mailing list