Cursus Raku / Functioneel, concurrent, reactief en webprogrammeren / Functioneel programmeren
Hogere-ordefuncties
In Raku is een subroutine een gewone waarde: je kunt haar in een variabele bewaren, haar aan een andere subroutine meegeven, en haar als resultaat teruggeven. Een subroutine die een andere subroutine aanneemt of teruggeeft heet een hogere-ordefunctie, en dat is het hart van functioneel programmeren.
Je hebt al hogere-ordefuncties gebruikt zonder ze zo te noemen —
map, grep en sort nemen allemaal
een codeblok als argument. Deze sectie laat zien hoe je die zelf
schrijft.
Deze methoden die een blok aannemen zijn ook een natuurlijke plek
voor de vorm met dubbele punt, waarmee je de haakjes kunt
weglaten — (1..10).grep: * %% 2 in plaats van
(1..10).grep(* %% 2). Die wordt geïntroduceerd in Aanroepen met een dubbele punt, en
de afkorting * die hij gebruikt is de Whatever-ster.
Onderwerpen in deze sectie
Praktijk
Maak de 2 quizzen over de inhoud van deze sectie.
Oefeningen
Deze sectie bevat 3 oefeningen. Bekijk alle onderwerpen van deze sectie voordat je aan de oefeningen begint.