<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Feb 27, 2014 at 12:56 PM, Walter Bright <span dir="ltr"><<a href="mailto:newshound2@digitalmars.com" target="_blank">newshound2@digitalmars.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class="">On 2/27/2014 2:19 AM, Timothee Cour wrote:<br>

</div><div class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
* cascade operations: they perform a series of operations on the members of a<br>
single object:<br>
foo.bar(1)..baz(3)<br>
equivalent to:<br>
foo.bar(1)<br>
foo.baz(3)<br>
</blockquote>
<br></div>
D has ranges and algorithms to conveniently chain operations.</blockquote><div><br></div><div>cascade != chaining:</div><div><br></div><div>cascade:</div><div>a.f1..f2..f3</div><div><=></div><div><div>a.f1</div></div>
<div><div>a.f2</div></div><div><div>a.f3</div></div><div><br></div><div><div>chaining:</div><div>a.f1.f2.f3</div><div><=></div><div>((a.f1).f2).f3)</div><div><br></div></div></div></div></div>