В perl 5 я бы использовал любую из функций Carp. В Perl 6 поиск не помогал, и прагма трассировки напечатает все стеки а не только тот, который мне нужен. Я мог использовать только старый прием: выбросить исключение, поймать его и распечатать:
try {
X::AdHoc.new(payload => 'Stack').throw;
CATCH { when X::AdHoc { .say; } }
}
Или, будучи немного ленивым:
{
die;
CATCH { default { .say } }
}
Как правильно это сделать?