<p>I've looked at both the <a href="http://www.parashift.com/c++-faq-lite/ctors.html#faq-10.20" rel="nofollow noreferrer">Named Parameter Idiom</a> and the <a href="http://www.boost.org/doc/libs/1_36_0/libs/parameter/doc/html/index.html" rel="nofollow noreferrer">Boost::Parameter library</a>. What advantages does each one have over the other? Is there a good reason to always choose one over the other, or might each of them be better than the other in some situations (and if so, what situations)?</p>

Implementing the Named Parameter Idiom is really easy, almost about as easy as using Boost::Parameter, so it kind of boils down to one main point.
-Do you already have boost dependencies? If you don't, Boost::parameter isn't special enough to merit adding the dependency.
Personally I've never seen Boost::parameter in production code, 100% of the time its been a custom implementation of Named Parameters, but that's not necessarily a good thing.