Boost logo

Boost :

Subject: [boost] Making two Boost libraries interoperate
From: Andrzej Krzemienski (akrzemi1_at_[hidden])
Date: 2019-04-24 12:39:21


Hi Everyone,
Somewhat in connection with the discussion about modularizing Boost
libraries, we had a certain conceptual problem recently about providing a
customization code that allows Boost.Serialization library to serialize
Boost.Optional. Such customization requires some code to be written
(template specializations provided).

Conceptually, such customization code does not belong to
Boost.Serialization: we do not expect that Boost.Serialization provides
specializations for every library that someone might ever want to
serialize. It would also require the maintainer of Serialization to keep
track of the implementation of Optional.

However, it also does not belong to Boost.Optional: we do not expect that
Boost.Optional provides customization points for every framework out there
that the users may want to ever use. It would also require the maintainer
of Optional to keep track of the implementation of Serialization.

However, it is a natural expectation of a Boost user that if the library
offers two components they should just smoothly inter-operate with one
another. We could provide a small module Serialization-Optional-interop,
but that would require many such components to exist and be maintained by
someone.

I would like to obtain some guidance on how to address such issue. The same
problem must already be present between other Boost libraries. Maybe this
has been already brought up, and we have a policy for solving this problem
somewhere?

Regards,
&rzej;


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