<p>As I recall <code>BOOST_MPL_ASSERT</code> was once preferred.  Is this still true?  Anyone know why?</p>

```
BOOST_MPL_ASSERT
```
is (still) generally considered better. The messages from it are somewhat easier to see (and understand, if you use
```
BOOST_MPL_ASSERT_MSG
```
). There was some talk a few months ago about deprecating
```
BOOST_STATIC_ASSERT
```
, though I think everyone eventually agreed that there's still room for it in the world.