> Thanks for taking time to review my code.

You welcome.  And thanks for the continuing development effort.

> Did you look through the PEP as well? 

Yes.

> In fact, I am half way done with implementing the change so
> that small BLists are memory efficient.

As the code continues to evolve, I'll continue to look at it.  I look forward 
to seeing how far you can take this.  Newly developed code always faces an 
uphill battle when compared to mature open-source.

> I am not sure what aspect of the performance might 
> be misunderstood. Just about everything is O(log n).
>  Could you clarify your concern?

End-users (everyday Python programmers) need to be understand the performance 
intuitively and have a clear understanding of what is going on under-the-hood.  
Our existing data structures have the virtue of having a simple mental model 
(except for aspects of re-sizing and over-allocation which are a bit obscure).


> Would it be useful if I created an experimental fork of 2.5 
> that replaces array-based lists with BLists,
>  so that the performance penalty (if any) on existing code 
> can be measured?

That would likely be an informative exercise and would assure that your code is 
truly interchangable with regular lists.  It would also highlight the 
under-the-hood difficulties you'll encounter with the C-API.

That being said, it is a labor intensive exercise and the time might be better 
spent on tweaking the third-party module code and building a happy user-base.


> Indeed, I wrote the BList because there were idioms that I
> wanted to use that were just not practical with an array-based list. 

We ought to set up a page on the wiki for success stories with blist as a 
third-party module.  In time, the Right Answer (tm) will become self-evident.  


Raymond
_______________________________________________
Python-3000 mailing list
Python-3000@python.org
http://mail.python.org/mailman/listinfo/python-3000
Unsubscribe: 
http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com

Reply via email to