ng with its power comes some complications. We almost take for granted that
  when we write <tt>i | j &gt;&gt; k</tt> where <tt>i</tt>, <tt>j</tt> and <tt>k</tt>
  are all integers the result is still an integer. Yet, with expression templates,
  the same expression <tt>i | j &gt;&gt; k</tt> where <tt>i</tt>, <tt>j</tt> and
  <tt>k</tt> are of type <tt>T</tt>, the result is a complex composite type [see
  <a href="basic_concepts.html">Basic Concepts</a>]. Spirit expressions, which
  are combinations of prim