<p>Yes indeed, you can provide a range interface on a tree. That's a good idea!</p>
<p>But I suppose Chuck wants to teach his students generic notions such as mapping or folding. Ranges are more a D-specific thing.</p>
<p>Also, what's interesting is that when  mapping a tree, you can keep its 'shape', whereas providing a range flattens the tree into a linear construct.<br>
</p>