17.04.2013 19:47, deadalnix пишет:
On Wednesday, 17 April 2013 at 10:35:08 UTC, Denis Shelomovskij wrote:
Can you explain what is the problem ?
Code in Issue 9603 doesn't work.
That is not explaining what is the problem. This should contains at least :
- Why it doesn't work.
No ability to tell when a delegate will be destroyed (currently it isn't
even destroyed when it should, see Issue 9602).
http://d.puremagic.com/issues/show_bug.cgi?id=9602
- What is the fundamental problem.
When a delegate is created information about it's outer scope is lost
instead of being stored in it's ptr.
- Why this fundamental problem is a language issue and not a lib one.
Looks self-evident.
- How does you proposition solve it.
It stores the information about delegate's outer scope wasting (oh God,
how many, especially in contrast to GC allocation) a few bytes.
Right now, the only element you have been able to provide are :
- signal accept delegate from object.
- So we must make all delegate object.
This is a very poor argumentation as the only reasonable answer to 1
without more input is go fix signal or raise a bug about signal.
As everything I have written above is known, I still don't understand
why you are telling about signal fixing as a main problem as it is just
an example of problems that occurs when we throw away outer scope
information without any practical reason, IMO.
--
Денис В. Шеломовский
Denis V. Shelomovskij