Boost logo

Boost :

From: David Bergman (davidb_at_[hidden])
Date: 2004-04-03 13:13:03

Gennadyi wrote:

> > You must have a funny definition of "definition".
> Ok. I admit using word definition is at best stretch. But let
> me give this imaginary example where I will try to explain
> what I mean.
> Let say for the Project1 we defined a house model like this:
> House is a big cube.
> Now for the Project1 it was enough and we got away with this
> "incomplete"
> definition. For the Project2 we start working with objects
> has or has not windows and doors. So we added following
> "updates to definition"
> House has windows.
> House has doors.
> So what is above statements in regards to our House model.
> It's not a [part of] definition, because definition was done
> earlier. But it does not mean that houses we model in
> Project1 did not have windows or doors. So above two
> statements are not part of definition, but part of what House
> is actually is.
> You may argue that by making additional specification we are
> essentially defining new model: House with doors and windows.
> But I do not see why should we? smart_ptr is still smart_ptr
> even though you added statement that it is dereferenceable.
> It was dereferenceble by definition, you just did not have
> means to ask it before.

This extra-typical "adornments" are part of what I would call a Feature
Model. So, those stated relations constitute part of the Concept's
definition. This is what Andy mentioned as well, and I think a few of us see
here, the traits being used to define the Concept.

> Ok, above is most probably is just a gibberish. After all
> it's not that important how you look at this. You may as well
> consider traits as representative of the orthogonal to models
> definitions universe of concepts and categories. Or may be it
> just somewhere in intersection.

It is not gibberish. As you know, one has to be careful of using words in a
non-C++ way.


Boost list run by bdawes at, gregod at, cpdaniel at, john at