Personally I think this doesn't belong to MPL.
A cursory search seems to show that the desire to use std::tuple with MPL is not uncommon, although getting a tuple out of an MPL sequence is of course only half of the story, people also want to use std::tuple as if it were an MPL sequence.
I've decided to provide the latter instead. That is, upon inclusion of <boost/mp11/mpl.hpp>, both mp_list and std::tuple become MPL sequences and can be manipulated with MPL algorithms. This implies the ability to convert an arbitrary MPL sequence into an mp_list or std::tuple, via mpl::copy<Seq, mpl::back_inserter<mp_list<>>>::type. https://github.com/pdimov/mp11/blob/feature/mpl/include/boost/mp11/mpl.hpp https://github.com/pdimov/mp11/blob/feature/mpl/test/mpl.cpp