Boost logo

Boost :

From: Terje Slettebø (tslettebo_at_[hidden])
Date: 2004-10-04 13:31:18


> > The library will be put in a CVS at the http://www.neoscientists.org/
> > server, and we're not sure how to deal with the maximum filename length.
The
> > current directory structure is, e.g.:
> >
> > #include <boost/concept_traits/std/is_default_constructible.hpp>
> > #include <boost/concept_traits/std/is_random_access_container.hpp>
> > #include <boost/concept_traits/std/is_random_access_iterator.hpp>
> > #include <boost/concept_traits/std/is_generator.hpp>
> >
> > Tobias suggested the following (the "model" part is still not decided,
and
> > may be considered separately):
> >
> > #include <boost/concept_traits/model/std/constructbility/default.hpp>
> > #include <boost/concept_traits/model/std/container/random_access.hpp>
> > #include <boost/concept_traits/model/std/iterator/random_access.hpp>
> > #include <boost/concept_traits/model/std/function/generator.hpp>
>
> I would keep the "is_" part and try to keep the general purpose traits
> intact:
>
> #include <boost/concept_traits/model/std/is_default_constructible.hpp>
> #include
<boost/concept_traits/model/std/container/is_random_access.hpp>
> #include
<boost/concept_traits/model/std/iterator/is_random_access.hpp>
> #include <boost/concept_traits/model/std/function/is_generator.hpp>

This silly filename length limit. :) Maybe if we wait long enough, it will
go away? ;) This was only halfway a joke:

1. While the ISO 9660 CD-ROM standard has a maximum of 31 characters for
filenames, the Joliet extension supports up to 64 characters.
2. While MacOS 9 has the same maximum as ISO 9660, MaxOS X supports up to
255 characters.

Some problems _do_ go away "by themselves"... ;)

> > To consider the issue, we looked at Boost's type_traits, where all the
> > traits are in the same directory, as well as libraries like MPL, where
it
> > appears to move to <boost/mpl/arithmetic/plus.hpp> (from
> > <boost/mpl/plus.hpp>) - at least, the "arithmetic" directory is there.
>
> Actually, it's the other way around -- they *used* to reside inside the
> directory, but at some point were moved to the top level. There are pros
> and cons to both ways.

Ok. Thanks for the update on that.

> > Opinions on whether or not "model" should be included in the path is
also
> > welcome. Bear in mind in that case that the "concept_traits" directory
will
> > also contain the "operator" (for the operator traits)
>
> Understand this one, ...
>
> > and "utility" (for components to define new traits),
>
> ... but not this.

Maybe it's too vague.

> > so "model" might more clearly separate out
> > that these are the concept traits, themselves.
>
> IMO just "std" is enough.
>
> > Also, what is the opinion on singular/plural? Boost's type_traits is
plural
> > (and this is quite similar to them), but there are otherwise mostly
singular
> > names in Boost (and the library requirements states that libraries
should
> > usually be singular).
>
> IMO this one should be plural ("concept_traits").

Agreed.

Thanks for your comments.

Regards,

Terje


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