Програмските јазици користат стратегии за евалуација за да одредат кога ќе се оценат аргументите на функцискиот повик (за функцијата, исто така, се чита: операција, метод или врска) и каков вид на вредност да помине на функцијата. На пример, повик по вредност / повик со референца одредува дека апликацијата за функција го евалуира аргументот пред да продолжи со оценувањето на телото на функцијата и дека пренесува две функции во функција, имено, способноста да се погледне на сегашната вредност на аргумент и да го модифицирате преку изјава за задача. Поимот стратегија за намалување на ламбда калкулусот е сличен, но различен. Во практична смисла, многу современи програмски јазици се спојуваат на повик-по-вредност / повик-по-референтна стратегија за евалуација за функциски повици (C #, Java). Некои јазици, особено јазиците на пониско ниво како C, комбинираат неколку поими за поминување на параметарот. Историски гледано, повик по вредност и повик по име датираат назад во АЛГОЛ 60, јазик дизајниран кон крајот на 1950-тите. Повик со референца се користи од страна на PL / I и некои Fortran системи. Чисто функционалните јазици како Haskell, како и не-чисто функционалните јазици како R, користат повик според потреба. Стратегијата за евалуација е специфицирана со дефиницијата на програмскиот јазик и не е функција на која било конкретна имплементација. [Мрзливи евалуација][Ламбда калкулус][Фортран] |