私が見ているとindir
実装でこのコメントを見ました:なぜtempはPerl 6のコア設定で動作しませんか?
sub indir(Str() $path, $what, :$test = <r w>) {
my $newCWD := $*CWD.chdir($path,:$test);
$newCWD // $newCWD.throw;
{
my $*CWD = $newCWD; # temp doesn't work in core settings :-(
$what();
}
}
私はmy
が実際に字句である場合についてdoc issue #1082やっかいにつながった、my
のこの使用は奇妙だと思いました。私はtemp
が動的変数のユーザーレベルの一時的な変更に適していると思っていたでしょう。
今、このコメントが表示されていますが、その意味がわかりません。 temp
はこの深刻な壊れていますか?ここでは利用できませんか?それとも、コメントは間違っていますか?
コメントが正しければ、それは一部の人々は根性でなければならないものですので、日常プログラマのレベルにまで漏れた動的変数を扱うこの方法がある(と彼らはそれに慣れましたか?)
そして、このレベルは本当にどのように低レベルですか? Perl 6のすべてがここで利用できるはずです。