note
diotalevi
<p>I have this clever idea to have the function use its own name as the slot for the return value.</p><code>sub regex {
my $in = shift;
# Assign something to $ret in a code assertion
my $function = (caller 0)[3];
no strict 'refs';
$$function = '';
$in =~ m/^(a)(?{ $$function = 1})/;
return $$function;
}
while(<DATA>) {
print regex($_) . ".";
}
__DATA__
a
b
a
abcd
bcda
</code>
267270
267310