Re: [boost] [cpo-proposal] presentation of the idea

Hi, I have working in the implementation of the cpo library, so I keep working and I expect to make a formal proposal within 2 or 3 months, and meanwhile I will try my best to answer mails.
I will not provide the classifier container with a push_back or push_front method, instead I will use insert, I suppose it is just about the meaning of sequence, I expect a sequence to keep an order on items while container means just a collection of items in not a particular order. On the other hand I will provide a way to iterate over a "single bucket". Actually, I have been working on benchmarking and that seems to be the better option to iterate over the classifier because it reduces the number of virtual method calls in the iteration. I also will provide a const random access iterator and some other utilities to access a particular item in the container.
The interface for my library needs to be far more simple than the interface in Boost.Intrusive, but I will consider that option to implement the details. Up to now, I am only using std containers to avoid dependencies, but I will consider other options to optimize speed and size performance. [snip] About "polymorphic vector", that is, a container that stores different types contigously, I should say that the interface needs to be as easy as in the classifier, so I will discard solutions that needs any requirement to objects apart from being copyable, default constructive or the like. I will try to develop a prototype from Larry Evans' example (with his permission). But because I am not an expert on alignment and memory optimization, I will try to use something "more standard", actually I am going trying to use the allocator to compute the "right" address to place an object of a given type that is greater that a "free" memory pointer. In that way, I also expect to take advantages of allocator such as tbb cache aligned allocator. Again, thank you all for your comments. Regards, Santiago -- ESCUELA TÉCNICA SUPERIOR DE INGENIEROS INDUSTRIALES UNIVERSIDAD POLITÉCNICA DE MADRID Santiago Tapia Fernández | DEPARTAMENTO DE AUTOMÁTICA, INGENIERÍA ELECTRÓNICA E INFORMÁTICA INDUSTRIAL José Gutiérrez Abascal, 2 | 28006 Madrid TEL +34 91 336 4266 E-MAIL stapia@industriales.upm.es www.industriales.upm.es

On 09/09/13 10:50, Santiago Tapia wrote: [snip]
I will try to develop a prototype from Larry Evans' example (with his permission).
You're welcome to use my example.
I know nothing about how 'to use the allocator to compute the "right" address'; hence, I'm afraid I can't be any help there. Could you maybe give a brief summary of how that works?
Best of luck on this project, Santiago! -regards, Larry

On Mon, Sep 9, 2013 at 7:50 PM, Santiago Tapia <santiago.tapia@upm.es>wrote:
The sequence is just a collection of elements which can be iterated through from begin to end. It has nothing to do with the order of elements in it or where these elements are stored. vector, set and unordered_set are all sequences, although these containers imply different element ordering strategies.
participants (3)
-
Andrey Semashev
-
Larry Evans
-
Santiago Tapia