Namun setelah melihat penjelasan sedikit dari bukunya Damian Conway, ternyata closure itu hanyalah sebuah subrutin yang bisa mengakses variabel leksikal (In Perl, a closure is just a subroutine that refers to one or more lexical variables declared outside the subroutine it self, itu yang Damian Conway katakan).
my $var = 'foo';
sub my_sub {
print $var, "\n";
}
Itulah closure :)
Lalu apabila kita punya sebuah naked block seperti ini
{
my $var = 'foo';
}
Tentu saja
$var
tidak bisa di akses di luar naked block tersebut, hanya closure yang bisa mengakses $var
{
my $var ='foo';
sub print_sub {
print $var,"\n";
}
}
print_sub();
So that's closure :)
No comments:
Post a Comment