his may cause surprises. 
For instance, if the previous example is rewritten as
</p>
<pre class="programlisting">
for_each(vp.begin(), vp.end(), cout &lt;&lt; '\n' &lt;&lt; *_1);
</pre>
<p>
the subexpression <code class="literal">cout &lt;&lt; '\n'</code> is evaluated immediately and the effect is to output a single line break, followed by the elements of <code class="literal">vp</code>.
The BLL provides functions <code class="literal">constant</code> and <code class="literal">var</code> to turn constants a