On 06/05/2013 08:44 AM, Max Klyga wrote:
On 2013-06-04 19:19:56 +0000, Idan Arye said:

snip

C# used to behave the same as D behaves now,

You mean the DMD behaviour? No way.

but in the latest update to C# was changed to properly capture by value.

Again, no way.

Apparently they indeed did a change for C# 5, but all that happened was that the foreach iteration variable exposed to the user was moved into the loop body. This is already the case in D, and yet the behaviour is still the broken one.

http://d.puremagic.com/issues/show_bug.cgi?id=2043.

Closures should capture (and in most functional languages they do)  by value

In which functional languages?

(at least primitive types) to avoid confusion.


Maybe there is a confusion of terminology. What do you mean when you say capture by value?

Reply via email to