> If the C<?> modifier is used for a particular parameter, that parameter
> is lazily evaluated. This means that it is only evaluated when the
> corresponding named parameter (see below) -- or the corresponding element
> of @_ -- is accessed in some way. Passing the parameter to another
> subroutine or returning it as an lvalue does not count as an access.
Can this be used to implement a Jensen device:
sub work($i,?$j) {
for $i ( 1..10 ) {
print "$i: $j\n";
}
}
my $foo;
work($foo, $foo*$foo); # prints 1 4 9 16 ...
-- Johan