Curso de Raku / Esenciales / Más sobre funciones

Parámetros tipados

Los parámetros de función en Raku pueden tener restricciones de tipo. Esto es muy similar a las variables tipadas.

sub add(Int $x, Int $y) { $x + $y }

La función ahora exige que sus argumentos sean números enteros.

say add(10, 20);
# say add(pi, e); # Error

Un intento de pasar un parámetro de cualquier otro tipo que no sea Int resulta en un error de compilación.

$ raku t.raku
===SORRY!=== Error while compiling t.raku
Calling add(Num, Num) will never work with declared signature (Int $x, Int $y)
at t.raku:5
------> say ⏏add(pi, e);

Nótese que Raku no convertirá automáticamente los tipos, incluso si es posible en otros casos.

# say add('3', '4'); # Error
say '3' + '4'; # OK y es 7

Cómo saber si es un error de compilación

Si el mensaje de error comienza con ===SORRY!=== Error while compiling, significa que el error ocurrió en tiempo de compilación.

Práctica

Completa el cuestionario que cubre el contenido de este tema.

Más sobre funciones / Atención al espacio   |   Más sobre funciones / Tipo de retorno


💪 Or jump directly to the exercise to this section.

Esta página está traducida automáticamente con ChatGPT 4o. Texto original en inglés.

Traducciones de esta página: EnglishDeutschEspañolItalianoLatviešuNederlandsБългарскиРусскийУкраїнська