← Back to team overview

gtg-contributors team mailing list archive

Re: Liblarch_newbase, call for review

 

On Tue, 2010-09-07 at 16:56 +0200, Luca Invernizzi wrote:
> Hello Lionel (and CCd gtg contributors),
> I'm trying to help in the development of liblarch_newbase, but I'd
> like to hear from your experience: what do you think is not working
> properly (also, in terms of performances)? Don't be afraid of being
> lenghty, I'll read it all :)

Hey Luca — I don't think liblarch_rebased at the moment is using
anything I wrote, but in my branch I made a performance-oriented change
that might help:

Almost everywhere in liblarch, Python lists are used (e.g. for keeping
the children & parents of a node, the displayed nodes in a FilteredTree,
etc.).

  Python sets (available since 2.4) function about the same as lists,
but with two differences: one, they don't store the *order* of elements,
and two, they are much faster, especially as the number of elements
grows.

  In some few cases, *order* is actually important: e.g. for the
children of a node. So those will have to remain lists. But the opposite
example, parents of a node, the order of parents is never used. Nor is
the order of displayed nodes in a FilteredTree, etc.

  Replacing most uses of lists in liblarch with sets would certainly
bring a performance improvement, although I don't know how big it would
be.

Cheers,
-- 
Paul Natsuo Kishimoto
SM candidate (2012), Technology & Policy Program
MIT Engineering Systems Division       (ESD/TPP)

http://paul.kishimoto.name          +16173026105

Attachment: signature.asc
Description: This is a digitally signed message part


Follow ups

References