CURRIED FUNCTION
\kˈʌɹɪd fˈʌŋkʃən], \kˈʌɹɪd fˈʌŋkʃən], \k_ˈʌ_ɹ_ɪ_d f_ˈʌ_ŋ_k_ʃ_ə_n]\
Sort: Oldest first
-
A function of N arguments thatis considered as a function of one argument which returnsanother function of N-1 arguments. E.g. in Haskell we candefine:average :: Int -> (Int -> Int) (The parentheses are optional). A partial application ofaverage, to one Int, e.g. (average 4), returns a function oftype (Int -> Int) which averages its argument with 4. Inuncurried languages a function must always be applied to allits arguments but a partial application can be representedusing a lambda abstraction:\ x -> average(4,x)Currying is necessary if full laziness is to be applied tofunctional sub-expressions.It was named after the logician Haskell Curry but the19th-century logician, Gottlob Frege was the first topropose it and it was first referred to in ["Uber dieBausteine der mathematischen Logik", M. Schoenfinkel,Mathematische Annalen. Vol 92 (1924)].David Turner said he got the term from ChristopherStrachey who invented the term "currying" and used it in hislecture notes on programming languages written circa 1967.Strachey also remarked that it ought really to be called"Schoenfinkeling".Stefan Kahrs reported hearing somebody inGermany trying to introduce "scho"nen" for currying and"finkeln" for "uncurrying". The verb "scho"nen" means "tobeautify"; "finkeln" isn't a German word, but it suggests "tofiddle".["Some philosophical aspects of combinatory logic",H. B. Curry, The Kleene Symposium, Eds. J. Barwise,J. Keisler, K. Kunen, North Holland, 1980, pp. 85-101]
By Denis Howe
Word of the day
basidiomycota
- comprises fungi bearing the spores on basidium: Gasteromycetes (puffballs); Tiliomycetes (comprising orders Ustilaginales (smuts) and Uredinales (rusts)); Hymenomycetes (mushrooms; toadstools; agarics; bracket fungi); in some classification systems considered a division of kingdom comprises fungi bearing spores on a basidium; includes Gasteromycetes (puffballs) Tiliomycetes comprising the orders Ustilaginales (smuts) and Uredinales (rusts) Hymenomycetes (mushrooms, toadstools, agarics bracket fungi).