lambda recursion
ddcovery
antoniocabreraperez at gmail.com
Fri Nov 27 17:01:01 UTC 2020
On Friday, 27 November 2020 at 16:40:43 UTC, ddcovery wrote:
> ...
> * Can the lambda be transformed to a template (using T instead
> "int") but avoiding function/return syntax?
>
> This is an example using function
>
> template qs(T){
> T[] qs( T[] items ){
> return items.length==0
> ? items
> : chain(
> qs(items[1..$].filter!(i=> i<items[0] ).array),
> items[0..1],
> qs(items[1..$].filter!(i=> i >= items[0]).array)
> ).array;
> }
> }
I mean... transform this into a lambda expression:
T[] qs(T)( T[] items ){
return items.length==0
? items
: chain(
qs(items[1..$].filter!(i=> i<items[0] ).array),
items[0..1],
qs(items[1..$].filter!(i=> i >= items[0]).array)
).array;
}
More information about the Digitalmars-d-learn
mailing list