functie: een herbruikbare taak een naam geven

Syntaxis en waarden

# taal: nl
functie telOp(a, b):
    geef a + b

zeg telOp(2, 3)

Parameters zijn positioneel en hebben een vast aantal. Een afsluitende komma
is toegestaan. Standaardwaarden, benoemde/optionele/variadische parameters,
typeannotaties en destructurering bestaan nog niet. Zie hoofdstuk 11.

Functies zijn waarden, hebben een vast aantal positionele argumenten en kunnen
worden doorgegeven, teruggegeven en lokaal gedeclareerd. Hun buitenste bereik
is het bereik van de declaratie, niet dat van de aanroeper. Ze blijven verwijzen
naar de gevangen variabelen en zien latere wijzigingen daarvan.

# taal: nl
functie maakTeller():
    laat aantal = 0
    functie volgende():
        zet aantal = aantal + 1
        geef aantal
    geef volgende

laat teller = maakTeller()
zeg teller()
zeg teller()

Een functie die het einde van haar blok bereikt, geeft geen terug.
geef expressie beëindigt direct de huidige aanroep. Een verkeerd aantal
argumenten geeft een diagnose. Er zijn geen anonieme functies, lambdas,
methodedeclaraties of overbelasting.

Recursie is begrensd. Sessieruntimes hebben een instelbare aanroepdiepte;
de gegenereerde native runtime gebruikt momenteel maximaal 256 geneste
gebruikersfunctieaanroepen.

Gerelateerde lemma’s

Syntaxis en waarden · Ingebouwde functies · Programmeergidsen