[D2] How to not full closure?

downs default_357-line at yahoo.de
Mon Jul 14 08:46:33 PDT 2008


Mike wrote:
> On Mon, 14 Jul 2008 04:39:58 +0200, davidl <davidl at 126.com> wrote:
> 
>> it's better to introduce a new keyword, closure.
>>
>> there
>>
>> on heap:
>> closure t = {
>>    // my closure
>>    return 3;
>> }
>>
>> on stack:
>> delegate t = {
>>    retirm 3;
>> }
> 
> Wouldn't it suffice to overload the new keyword?
> 
> heap:
> 
> delegate t = new { return 3; }
> 
> stack:
> 
> delegate t = { return 3; }
> 
> That way it could work with delegate literals too:
> 
> int b = 3;
> foo(new { return b; });
> 
> -Mike
> 
> 

For what it's worth, I like that solution a lot.



More information about the Digitalmars-d mailing list