Булевый контекст
Бинарный оператор ? в Perl 6 устанавливает (forces) булевый контекст независимо от того, какое выражение следует за ним.Обычное присваивание — есть обычное присваивание, и переменная $boolean будет содержать значение 23:
my $value = 23;
my $boolean = $value;
say $boolean;
Однако, если перед $value поставить вопросительный знак, пример напечатает единицу:
$boolean = ?$value;
say $boolean;
Форсирование булевого контекста примерно равнозначно сравниванию переменной с нулем (если не говорить об обработке значений undef и пустых строк).
$boolean = $value != 0;
say $boolean;
6 сентября 2005