Re: [fusion] Proposal for deprecating fusion.tuple.

Lee Clagett <[email protected]>
Newsgroups gmane.comp.parsers.spirit.general
Message-ID <20170930094147.1965e468@laptop-m1330>
On Fri, 29 Sep 2017 11:18:35 -0700
chris beck <[email protected]> wrote:

> > I propose deprecating fusion.tuple, it makes fusion.vector
> > implementation complex.  
> 
> If fusion::tuple is deprecated in favor of std::tuple, would this
> also mean that boost::fusion would require C++11-conforming standard
> library to compile?

No, I _think_ what the OP noticed was that users of `fusion::tuple`
could move to `fusion::vector`. There are some subtle differences, but
the difference is unlikely to matter in most (all?) cases. This could
save on some maintenance work in Fusion.

> Right now, unless I'm mistaken, fusion works fine even on e.g. gcc
> 4.5, and there are many C++03 etc. projects that depend on it.
> 
> What is the gain that you hope to achieve here, improved compilation
> times? How can moving to std::tuple accomplish that, since presumably
> the implementation quality of std::tuple will vary greatly from
> compiler to compiler? Wouldn't it be simpler to just try to make
> fusion::tuple faster in the perceived problematic cases?

The OP was primarily concerned about maintaining `fusion::tuple`. I
unfortunately injected a performance angle, and hopefully my next
response to Kohei will make it more clear why.

> > Hence, why not replace fusion::tuple with hana tuple?  
> 
> And hana is also far more demanding than fusion in terms of compiler
> support. For instance it doesn't work at all on MSVC yet, and so is
> totally inappropriate for some cross-platform projects.
> 

Agreed, `hana::tuple` is not appropriate for many situations since it
requires a conforming C++14 compiler which is not always available. I
do not expect the removal of a working C++03 `fusion::vector`.

Lee

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.