Example 8-6. examples/p526/functions.p6
#!/usr/bin/perl6
my $lang = "Perl";
creator("Larry", $lang);
sub creator { # still works as in Perl5 and you get the values in @_
my ($person, $language) = @_; # you can copy them
say "the creator of $language is $person";
}
creator_2("Larry", $lang);
sub creator_2 ($person, $language) { # you can also defined the expected parameters
#$language ~= 6; # but in this case you cannot change the variables
say "the creator of $language is $person";
}
creator_3("Larry", $lang);
sub creator_3 ($person, $language is rw) { # you can also defined the expected parameters
$language ~= 6; # now you can change the $language variable but
say "the creator of $language is $person";
}
say "What ? $lang"; # and it also changes the parameter itself.
creator_4("Larry", $lang);
sub creator_4 ($person is copy, $language is rw) {
$person ~= " Wall";
say "the creator of $language is $person";
}
| Prev | Home (Copyright Gabor Szabo) Perl Training Israel | Next |
| Control Structures | Up | Files |