Анонимна функция: Разлика между версии
Изтрито е съдържание Добавено е съдържание
м fixlink |
м без интервал |
||
Ред 9:
Ако дадена функция се използва само веднъж или ограничен брой пъти, е подходящо да бъде създадена като анонимна, тъй като това я прави синтактично по-лека, отколкото именувана функция. Във функционалните езици и други езици с функции от първи клас анонимните функции се използват навсякъде, където те изпълняват същата роля за вида на функцията, както правят литералите за други типове данни.
Произходът на анонимните функции е свързан с работата на [[Алонсо Чърч]] и неговата теория за [[ламбда смятане]], (създадена преди ерата на компютрите), в която всички функции са анонимни.<ref>Fernandez, Maribel (2009), [https://books.google.bg/books?id=FPFsnzzebhQC&pg=PA33&redir_esc=y#v=onepage&q&f=false ''Models of Computation: An Introduction to Computability Theory''], Undergraduate Topics in Computer Science, Springer Science & Business Media, p.
Анонимните функции са форма на вложена функция, в която е позволен достъпа до променливи в обхвата на съдържащата функция. Ето защо анонимните функции трябва да бъдат имплементирани чрез използването на затваряне. За разлика от именуваните вложени функции, те не могат да бъдат рекурсивни без помощта на т.нар. оператор на неподвижната точка (т.нар. анонимна неподвижна точка или анонимна рекурсия).<ref>''[https://www.cs.cornell.edu/Courses/cs3110/2012sp/lectures/lec29-fixpoints/lec29.html "Lecture 29: Fixpoints and Recursions"]. CS3110 Spring 2012 :: Data Structures and Functional Programming''. Cornell University – Computer Science. Посетен на 3 декември 2014.</ref>
|