Of course, in Perl, one doesn't really need "lambda". Hence a lambda which just returns the sub.
Yes, I agree, if one is willing to set the variables ‘outside’—but I'd like to set them on the function call, so that I can write
my $f = lambda $x => sub { $x**2 };
say $f->(2); # => 4
say $f->(3); # => 9
(without affecting the value of
$x). Of course you're right that Perl doesn't need
lambda, in the sense that the imaginary code above functions exactly the same as the real code
my $f = sub { $_[0]**2 };
say $f->(2); # => 4
say $f->(3); # => 9
I just wanted to see if it could be done. (I have other examples that aren't just syntactic sugar, but
the margin is too small to contain them they're not pretty.)