2016-09-18 8 views
5

Perl 6では、実行時に本体内から関数/サブルーチンの名前を取得するにはどうすればよいですか?例えばPerl 6:内部から関数の名前を取得する

sub foo { 
    say "My name is: " ~ <WHAT-API-HERE??> ; 
} 
... 
foo(); 

上記のコードは印刷する必要があります:私はMOPFAQ、およびFunctionsのような場所で見てきた

My name is: foo 

答えて

6
sub foo { say &?ROUTINE.name } 
foo 

表示されます。

foo 

Compile-time variables docを参照してください。

+1

ありがとう、私は単にMOP、FAQ、機能のような間違った場所を探していました。 – Harry

+4

@ハリーリー質問をするときは、常にあなたの研究努力について少なくとも言及してください。あなたの以前の研究努力をより明確にするためにあなたのご意見を編集しました。私はあなたの以前の研究努力が、誰か(私ではない)があなたを落胆させた理由かも知れないと思っています。とにかく、これが参考になることを願っています私は本当にあなたがこの質問をしてうれしく思っており、raiphが答えを共有してくれてうれしいです。 –

+5

@ハリーyw。あなたの検索選択肢(MOP、FAQなど)は完全に合理的ですが、回答の変数のページを見ることを期待する方法はありません。より一般的には、ドキュメントははるかに優れていますが、まだまだ道のりは非常にあります。また、このコメントを書いている時点では、Perl 6に関する質問への回答を比較的早く得るための最良の場所は、そうではなく、Perl 6のさまざまな友好的なIRCチャンネルです(特に[Freenode#perl6] https://kiwiirc.com/client/irc.freenode.net/perl6)。 – raiph

関連する問題