Remember how I mentioned earlier that Boost.YAP does things in a completely lazy way? Boost.YAP doesn't ever evaluate your expression eagerly. Eager evaluation can be done, but it's a bit of code.
#include <boost/yap/expression.hpp> #include <iostream> int main () { evaluate(boost::yap::make_terminal(std::cout) << "Hello" << ',' << " world!\n"); return 0; }