On June 1, 2014 5:30:12 PM EDT, Peter Dimov
Jonathan Wakely wrote:
Would it be possible to define true_ and false_ with a lot less code?
Possibly. The problem is that mpl::bool_ is owned by MPL. It can impose all sorts of (potentially changing, although this is not an issue at the moment) requirements on them. None of those are actually needed by people doing tag dispatching, but we can't just kidnap mpl::true_ and mpl::false_ and decree that they shall henceforth live in Core.
Put a few pieces into core and change MPL to use or derive from them. For example, mpl:: true_type can derive from a new boost::true_type (which could be an alias for std:: true_type). New and refactored code can use the latter, while legacy code can continue to use the former. ___ Rob (Sent from my portable computation engine)