Boost logo

Boost :

From: vicente.botet (vicente.botet_at_[hidden])
Date: 2008-02-01 01:55:54


Hi,

I was wondering if as the intermodule_holder is a kind of workaround for
platforms where dynamic loaded libraries can duplicate static libraries, we
can have a better performance on the others for free.

On platforms on which static variables are unique inter dynamic loaded
modules the intermodule_holder specifier can be a static_holder.
This could be controlled using conditional compilation.

struct intermodule_holder:holder_marker
{
  template<typename C>
  struct apply
  {
#ifdef BOOST_NO_DLL_UNIQUE_STATIC_VARIABLE
    typedef intermodule_holder_class<C> type;
#else
    typedef static_holder_class<C> type;
#endif
  };
};

Have this a sens or I'm missing something?
Could the documentation add a reference to the duplication problem?

In addition, I'd replace static_holder by intramodule_holder.
intramodule_holder reflects much more the accessibility intent for the
users, static_holder talks more about the implementation.

Regards

Vicente

---------------------------
Vicente Juan Botet Escriba
----- Original Message -----
From: "Ion Gaztañaga" <igaztanaga_at_[hidden]>
To: <boost_at_[hidden]>; "Boost User List"
<boost-users_at_[hidden]>; <boost-announce_at_[hidden]>
Sent: Tuesday, January 29, 2008 9:58 PM
Subject: [boost] [flyweight] Review period extended to February 3

Hi to all,

We've received 4 positive reviews and several comments, but we still
want more ;-) Some people expressed interested in the pre-review period
and I want to give some time (weekend is the right time to review a
Boost library...) to those who are interested in the library and have
not found time to review it. The last review day is February 3.

Common, the library is very lightweight ;-) to review, it's pretty well
documented, it's certainly small and very general purpose. Here is the
information. Last call to passengers!

*Description:*

Flyweights are small-sized handle classes granting constant access to
shared common data, thus allowing for the management of large amounts of
entities within reasonable memory limits. Boost.Flyweight makes it easy
to use this common programming idiom by providing the class template
flyweight<T>, which acts as a drop-in replacement for const T.

*Online docs:*

http://tinyurl.com/2sstyr
http://svn.boost.org/svn/boost/sandbox/flyweight/libs/flyweight/index.html

*Download:*

http://tinyurl.com/hrdm6
http://www.boost-consulting.com/vault/index.php?&direction=0&order=&directory=Patterns

*Notes:*

1) We've seen some suggestions in the mailing list for Flyweight.
Joaquín has nicely explained a couple of issues that we'd like to
address/discuss in the review:

http://tinyurl.com/33ghtf
http://svn.boost.org/svn/boost/sandbox/flyweight/libs/flyweight/doc/review_notes.html

2) Flyweight needs Boost 1.35 elements because the library depends on
libraries like Interprocess for some features/tests. Since SVN snapshot
tarballs seem to be missing these days, those who want to try flyweight
can download a working SVN-HEAD snapshot here:

http://igaztanaga.drivehq.com/boost_trunk.tar.bz2

3) Serialization tests won't work. This feature is expected to work when
some new features (discussed in the mailing list between Joaquín and
Robert Ramey) are added in Boost.Serialization. Those are expected for
Boost 1.36.

What to include in Review Comments
==================================

Your comments may be brief or lengthy, but basically the Review Manager
needs your evaluation of the library. If you identify problems along
the way, please note if they are minor, serious, or showstoppers.

Here are some questions you might want to answer in your review:

* What is your evaluation of the design?
* What is your evaluation of the implementation?
* What is your evaluation of the documentation?
* What is your evaluation of the potential usefulness of the library?
* Did you try to use the library? With what compiler?
     Did you have any problems?
* How much effort did you put into your evaluation?
     A glance? A quick reading? In-depth study?
* Are you knowledgeable about the problem domain?

And finally, every review should answer this question:

* Do you think the library should be accepted as a Boost library?
     Be sure to say this explicitly so that your other comments
     don't obscure your overall opinion.

Ion Gaztañaga
- Review Manager -
_______________________________________________
Unsubscribe & other changes:
http://lists.boost.org/mailman/listinfo.cgi/boost


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