Raku kurss / Funkcionālā, paralēlā, reaktīvā un tīmekļa programmēšana / Funkcionālā programmēšana

Augstākas kārtas funkcijas

Raku valodā apakšprogramma ir parasta vērtība: to var saglabāt mainīgajā, padot citai apakšprogrammai un atgriezt kā rezultātu. Apakšprogrammu, kas ņem vai atgriež citu apakšprogrammu, sauc par augstākas kārtas funkciju, un tā ir funkcionālās programmēšanas sirds.

Augstākas kārtas funkcijas jūs jau esat lietojuši, tās nenosaucot — map, grep un sort visas ņem koda bloku kā argumentu. Šī sadaļa parāda, kā uzrakstīt savējās.

Šīs metodes, kas ņem blokus, ir arī dabiska vieta kola izsaukuma formai, kas ļauj atmest iekavas: (1..10).grep: * %% 2 vietā (1..10).grep(* %% 2). Tā ieviesta sadaļā Izsaukšana ar kolu, un saīsinājums *, ko tā izmanto, ir Whatever zvaigznīte.

Šīs sadaļas temati

Prakse

Jūs gaida 2 viktorīnas par šīs sadaļas saturu.

Vingrinājumi

Šajā sadaļā ir 3 vingrinājumi. Pirms ķerieties pie vingrinājumiem, izlasiet visus šīs sadaļas tematus.

  1. Pielietojiet divreiz
  2. Izveidojiet reizinātāju
  3. Filtrēšana ar bloku

Kursa navigācija

Risinājums: Trijstūrveida skaitlis   |   Apakšprogrammu nodošana