Curso de Raku / Avanzado / Operadores

Tipos de operadores en Raku

Ya has utilizado muchos operadores: +, ~, ++, y otros. En Raku, los operadores se clasifican según donde se ubican en relación con sus operandos. Conocer las categorías te será útil más adelante, cuando definas tus propios operadores.

prefix

Un operador prefijo va antes de un único operando:

my $x = 5;
say -$x; # -5
say ?$x; # True

Aquí, - niega el numero y ? convierte un valor en su equivalente booleano.

infix

Un operador infijo se situa entre dos operandos. La mayoría de los operadores aritméticos y de cadenas conocidos son infijos:

say 3 + 4;       # 7
say 'a' ~ 'b';   # ab

Un operador infijo no siempre es un símbolo de puntuación; también puede ser una palabra. El operador gcd que viste con los números enteros, por ejemplo, es un operador infijo escrito como un nombre entre sus dos operandos:

say 12 gcd 18;   # 6

postfix

Un operador postfijo va después de un único operando:

my $x = 5;
$x++;
say $x; # 6

circumfix y postcircumfix

Un operador circumfijo rodea su operando. Los corchetes que construyen un arreglo son un operador circumfijo:

my @a = [1, 2, 3];

Un operador postcircumfijo rodea algo pero sigue a un termino. La indexación es un operador postcircumfijo: el [1] después de @a:

my @a = 10, 20, 30;
say @a[1]; # 20

Estos nombres — prefix, infix, postfix, circumfix y postcircumfix — son las mismas palabras que Raku utiliza cuando declaras un nuevo operador, como verás más adelante.

Práctica

Resuelve 3 cuestionarios sobre el contenido de este tema.

Ejercicios

Esta sección contiene 3 ejercicios. Mira todos los temas de esta sección antes de empezar los ejercicios.

  1. Contar hacia arriba
  2. Booleano de un valor
  3. Subíndice de un hash

Operadores   |   Contar hacia arriba