我想知道是否有一种方法可以将方法和/或子绑定到Raku中的另一个方法/子名称。我已经看到了如何将变量绑定到方法/子,但这并不是我想要的。我知道如何在Perl 5中做到这一点:
sub sub1 {
print "sub1!\n";
}
*sub2 = \&sub1;
sub1(); # sub1!
sub2(); # sub1!
实际上,你对普通变量所做的几乎与你对subs所做的完全相同。
sub sub1 { say "sub1!" }
my &sub2 = &sub1;
sub1; # sub1!
sub2; # sub1!
实际上,您不需要绑定,因为subs没有容器化并且
@user0721090601已经给出了subs的答案。对方法做同样的事情稍微复杂一些。幸运的是,生态系统中有一个模块让你更容易做到这一点:方法d::Also。这允许你说:
use Method::Also;
# ...
method foo() is also<bar bazzy> {
然后您也可以调用. bar
和.bazzy
方法,并获得与调用.foo
方法相同的结果。