Boost logo

Boost :

From: Gennadiy E. Rozental (rogeeff_at_[hidden])
Date: 2001-11-28 12:48:26


Hi,

It's just my couple words on the topic. This is what I see to be
important while considering Template metaptogramming-library:

1. Portability
I do not know how about you but this is one of the major things for
me.
2. Compilation time.
I still think that in future C++ need more powerful solution fot
functional programming. BUT, for now most of the things using
templates are implementated inline. And accordingly affect compile
time. I do not know you development habits but I like to compile
frequently. And if instead of ten seconds (example) I will need to
wait 1 min, it will hurt be bad. I realize an inlined nature but I
would prefer any solution that will speed up compilation.
3. Usage simplicity
One more very important issue. To simplify usage nothing would stop
me. You need helper macro - introduce them (can implement as a
function even better). Sacrify implementation simplicity if you need.
The exhaustive documentation would help.
4. Flexability
I would say that in best case library should cover most of the things
user would want to do. Though flexability should be reasonable. No
need to sacrify implementation fot the very rarely used feature.
5. Extendability
But oh the other hand, user should be able to write his own
specialization for something to implement this rarely used feature.
6. Reasonable Implementation simplicity
Frankly speaking, it's up to library developer. How many times did
you look how std::map is implementated? Does it prevent you from
using it? The simple the better is the only point. But none of the
previos items should be sacrified. One more comment about the amount
of files: more files the better. Advanced user could then choose the
features to include. You could also provide a compound header with
most widely used features preincluded to novice user.

From the standpoint what sould be accpted into the Boost I would like
to support proposition from one of the previos message. I do not know
now many time Alexey need to complete his work. But the simple
facility would be good to have now (I personnaly need type_list to
implement one feature). So the best solution would be to make a
simple solution with the same interface (not implementation - it's up
to developer) as coming complete solution. It will give us a change
to start using it now and smooth switch in a future.

Regards,

Gennadiy.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk