On Tue, Sep 19, 2017 at 3:44 AM, Luca Ferrari <fluca1...@infinito.it> wrote:

> this will sound trivial, but the following piece of code that in my
> mind should work does not:
>
> $mode = 'csv' if ( ! $mode.defined || %available_modes{ $mode }:!exists );
>
> and the compiler says:
>
> You can't adverb &infix:<||>
>

You want the adverb to be on the postcircumfix; parenthesize the
expression. IIRC this was considered the least bad alternative out of an
ambiguous parse (i.e. which operation does the adverb apply to?).

    $mode = 'csv' if ( ! $mode.defined || (%available_modes{ $mode
}:!exists) );

-- 
brandon s allbery kf8nh                               sine nomine associates
allber...@gmail.com                                  ballb...@sinenomine.net
unix, openafs, kerberos, infrastructure, xmonad        http://sinenomine.net

Reply via email to