Closures/Value capture: Difference between revisions

Content added Content deleted
(add scala)
Line 638: Line 638:
=={{header|Scala}}==
=={{header|Scala}}==
<lang scala>val closures=for(i <- 0 to 9) yield (()=>i*i)
<lang scala>val closures=for(i <- 0 to 9) yield (()=>i*i)
0 to 8 foreach (i=> println(closures(i)()))</lang>
0 to 8 foreach (i=> println(closures(i)()))
println("---\n"+closures(7)())</lang>
Output:
Output:
<pre>0
<pre>0
Line 648: Line 649:
36
36
49
49
64</pre>
64
---
49</pre>


=={{header|Smalltalk}}==
=={{header|Smalltalk}}==