Cursus Raku / Geavanceerd / Subroutines / Meer over MAIN-subroutines / Exercises / Een getypte MAIN

Oplossing: Een getypte MAIN

Hier is een mogelijke oplossing voor de opgave.

Code

sub MAIN(Int $n) {
    say $n * 2;
}

🦋 Je kunt de broncode vinden in het bestand typed-main.raku.

Uitvoer

$ raku typed-main.raku 5
10

$ raku typed-main.raku abc
Usage:
  typed-main.raku <n>

Opmerkingen

  1. De Int-beperking betekent dat het commandoregelwoord eruit moet zien als een geheel getal. Bij 5 wordt het gebonden aan $n en drukt de body 10 af.

  2. Bij abc kan de waarde geen Int worden, dus de signatuur komt niet overeen. Raku voert de body niet uit — het drukt in plaats daarvan het gegenereerde gebruiksbericht af, wat je argumentvalidatie geeft zonder handmatige controles.

Cursusnavigatie

Een getypte MAIN   |   Twee argumenten optellen