On Wednesday, 24 May 2017 at 20:15:37 UTC, Vittorio Romeo wrote:
If you're interested in contributing, please let me know and
I'll add you as a collaborator.
can i just edit it on the site?
but a few comments:
"Currently FunctionLiterals that capture their outer context
(i.e. closures/delegates) require an allocation and the garbage
collector. "
Not necessarily true, make sure you actually mention `scope
delegate` and `alias` params that do not return it. Those capture
but do not allocate.
"We will be proposing a syntax redundant w.r.t. current behavior
(i.e. capture by reference), so maybe we should consider
proposing deprecation?"
Don't do that.
" // or simply, using existing syntax:
//auto l = () => writeln("hello!");"
That existing one will actually make a function, not a delegate,
since it doesn't access any locals.
" struct anonymous_l"
That should be `static struct`.
"Capture by reference"
I'm against that, no need adding it and it complicates the whole
thing. For example, "ref int _i;" as a struct member; there's no
such thing in D. (the compiler could do it but still). And you'd
have to explain the lifetime. Just no point doing this, the
current behavior is completely fine for this.