Boost logo

Glas :

Re: [glas] proposals

From: Karl Meerbergen (Karl.Meerbergen_at_[hidden])
Date: 2007-04-04 14:10:51


Hi,

I am preparing a proposal for an extendable backend system and concepts
for vectors (and scalars to some extent).

One of the design decisions I would like to make is to use free
functions as much as possible. I think that free functions would make
life alot easier and extensions more straightforward. I will explain
later in detail.

Does someone have a strong objection against
size(v) instead of v.size(), stride(v) instead of v.stride() ?

Similarly, one could argue that meta functions are preferred to members,
e.g.
size_type<V>::type rather than V::size_type.

However, concept C++ suggests to organize this in a slightly different
way, e.g.
VectorExpression<V>::size_type
where VectorExpression is a concept.
In pure C++, VectorExpression would be a traits blob.
Therefore, I prefere the latter notation to meta functions with a single
type member.

Best,

Karl