Pairs

Pairs are usually built with the fat-comma operator:
( name => 'Luca', surname => 'Ferrari' )[0].say
# name => Luca
( name => 'Luca', surname => 'Ferrari' )[0].^name.say
# Pair

Using adverb notation to create Pairs

A Pair can be built with the adverb notation, using :, in several ways.

Explicit key and value

In this form the Pair assume the form :key(value) or, with automatical quotes on values, the form :key<value>:
:name('Luca').say;
# name => Luca
:name('Luca').^name.say;
# Pair

:name<Luca>.say;
# name => Luca
:name<Luca>.^name.say;
# Pair

Implicit value

In this form a Pair is created by simply placing a colon in front of a variable sigil. The Pair will use the name of the variable as key and the value of the variable as value in the pair:
my $name = 'Luca'; # same as $name = <Luca>
# Luca
:$name.say;
# name => Luca
:$name.^name.say;
# Pair

Implicit boolean

In the case no sigil is specified, the name of the adverb is used as a key, the boolean value True is assigned (or false if a negation is used):
:male.say;
# male => True
:male.^name.say;
# Pair

:!male.say;
# male => False
!male.^name.say;
# Pair

Implicit value within key

In the special case of a number, it is possible to put the number in front of the key name and the Pair will be defined with the number as value. This is, in my opinion, a bad approach because it can make things quickly unreadable:
:39Age.say
# Age => 39
:39Age.^name.say;
# Pair

The article Adverb pairs in Perl 6 has been posted by Luca Ferrari on December 22, 2017