Dual iterators in constructors
==============================

Most aggregate types support various constructors (as described in their 
specific sections),  some of which use the syntax ``x in S`` to iterate over the 
elements of a structure :math:`S` during the construction. If this structure 
:math:`S` supports dual iteration, then the syntax ``i -> x in S`` is also 
allowed in such situations (and consequently both :math:`i` and :math:`x`` may 
be used in the associated expressions). The meanings assigned to :math:`i` and 
:math:`x` during dual iteration will be explained in the sections for those 
types which support it.
