Čo je to kari?
Otázka: Čo je to kari?
A: Currying je technika používaná v matematike a informatike, ktorá zahŕňa zmenu funkcie, ktorá prijíma niekoľko argumentov, na niekoľko funkcií, z ktorých každá prijíma jeden argument.
Otázka: Kto položil základy curryingu?
Odpoveď: Základ techniky currying položili matematici Moses Schönfinkel a Gottlob Frege.
Otázka: Kto je Haskell Brooks Curry a ako súvisí s curryingom?
Odpoveď: Haskell Brooks Curry je matematik, po ktorom je pomenovaná technika curryingu.
Otázka: Čo je lambda kalkul?
Odpoveď: Lambda kalkul je formálny systém v matematickej logike a informatike používaný na vyjadrenie výpočtov.
Otázka: Aká je úloha curryingu v lambda kalkulu?
Odpoveď: Currying sa v lambda kalkulu používa na redukciu funkcií s viacerými argumentmi na sériu funkcií len s jedným argumentom.
Otázka: Existujú nejaké programovacie jazyky, ktoré obmedzujú funkcie len na jeden argument?
Odpoveď: Áno, niektoré programovacie jazyky, napríklad ML a Haskell, majú obmedzenie, že funkcie môžu mať len jeden argument.
Otázka: Prečo programovacie jazyky ako ML a Haskell obmedzujú počet argumentov, ktoré môžu funkcie prijať?
Odpoveď: Toto obmedzenie je motivované jednoduchosťou a flexibilitou, ktoré prináša currying. Tým, že funkcie majú len jeden argument, možno ich ľahko skladať a kombinovať, čo vedie k stručnejšiemu a opakovane použiteľnému kódu.