Currying to proces przekształcania funkcji wielu argumentów w funkcję jednego argumentu, która zwraca inną funkcję, która przyjmuje o jeden argument mniej niż oryginalna. Języki takie jak Haskell używają tego jako domyślnego mechanizmu aplikacji argumentów, ponieważ znacznie ułatwia to niektóre techniki programowania, takie jak częściowe stosowanie.