monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-devel] Re: responses to some IRC discussion of 'automate'


From: Bruce Stephens
Subject: [Monotone-devel] Re: responses to some IRC discussion of 'automate'
Date: Mon, 07 Aug 2006 12:54:17 +0100
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

Thomas Keller <address@hidden> writes:

[...]

> Thats right, but one could think about optimizations here, which
> would only be possible in mtn itself. If the heads of multiple
> branches should be found, one could do that with one single SQL
> statement and later group the result accordingly, while separate the
> results from each other.

You could also consider caching.  In your GUI, you could cache the
heads of branches along with the timestamp of the database, and that
might help (if you typically want the results several times between
modifications of the database).

Or you could change mtn so it keeps such a cache, updating it after
each modification---that might be a win, although I'm not sure
everyone would want it.  Or maybe there's an inductive way of
computing this?  (i.e., if you've got correct values now, can you
cheaply compute the values after adding a single revision or cert?)
(You could certainly very easily keep track of leaves inductively,
although that seems very unlikely to be valuable.)

[...]

> Well, its nice to see that its that easy to do in Python, but its
> not that easy in other languages. The amount of verbosity which is
> needed e.g. in C++ with Qt is quite big, and because of Qt's
> "superior" signal and slot handling one would need to couple the
> querying of each set with each other, and this is very messy. I
> won't give you an example here, but ask somebody else with Qt
> experience and he'll tell you the same thing. Of course you might
> say now "Qt was your choice", well, right, Qt was my choice, because
> its fast, consistent and otherwise very easy to code for different
> platforms, but retrieving tiny bits of information from different
> sources and/or different handlers even (and each mtn automate
> command would need to get its own handler) is a major headache.

You surely don't need to use Qt's signals and slots for this: just use
straight C++?  That shouldn't be *that* much longer than the Python?




reply via email to

[Prev in Thread] Current Thread [Next in Thread]