Curso de Raku / Avanzado / Operadores / Traits y pragmas / Exercises / Un parámetro modificable
Solución: Un parámetro modificable
Aquí tienes una posible solución para la tarea.
Código
sub double($n is rw) {
$n *= 2;
}
my $score = 21;
double($score);
say $score;🦋 Puedes encontrar el código fuente en el archivo writable-parameter.raku.
Salida
42Comentarios
is rwvincula el parámetro$na la variable del llamador$score, así que$n *= 2dentro dedoublecambia$scoredirectamente — por eso imprime42.Sin
is rw, el parámetro sería de solo lectura y$n *= 2sería un error en tiempo de compilación. Marcarlo conis copyen cambio le daría adoubleuna copia privada para modificar, dejando$scoreintacto en21.