Anonimna funkcija je funkcija koja se koristi u mnogim programskim jezicima, ali, za razliku od drugih funkcija, može se koristiti bez veza i ne treba joj ime. Jedan od načina korištenja anonimne funkcije je prosljeđivanje podataka iz jednog odjeljka u drugi, osobito ako su podaci kratki. Za razliku od drugih funkcija koje se moraju deklarirati i koristiti u dva odvojena koraka, ova funkcija kombinira obje u jednom koraku. Umjesto da programira mnogo različitih rezerviranih mjesta u program koji ih treba, programer može koristiti jednu od ovih funkcija kao zamjenu, smanjujući količinu koda i osiguravajući da nema pravopisnih pogrešaka.
Mnoge funkcije u programiranju moraju biti vezane za token ili simbol koji se naziva identifikator. To se zaobilazi kada se koristi anonimna funkcija, jer nije potreban identifikator da bi se funkcija pokrenula. Funkcija ne treba ime; jednostavno se deklarira i koristi tijekom izvođenja. Većina programera dat će funkciji ime kako bi je olakšali ručno identificirati, osim ako postoji samo nekoliko anonimnih funkcija.
Jedan od načina korištenja anonimne funkcije je natjerati je da prenosi informacije iz jednog odjeljka u drugi. To se može učiniti bilo učitavanjem određenih informacija u funkciju ili prosljeđivanjem informacija duž kanala dok ne dosegnu ovu funkciju. Primarni razlog za to je taj što ova funkcija zahtijeva vrlo malo koda za deklariranje i funkcionira kao prikladan posrednik prilikom prosljeđivanja informacija.
Kada se u programskom jeziku koristi obična funkcija, potrebna su dva koraka. Prvo, funkcija mora biti deklarirana, a zatim mora postojati kodiranje za pokretanje deklarirane funkcije. Anonimna funkcija može učiniti oboje u jednom koraku i obično zahtijeva manje kodiranja. Ovo se obično koristi za jednokratne funkcije; anonimna funkcija nije vezana ni za što, pa može uzrokovati pogrešku s ponovljenim funkcijama.
Uz većinu programskih funkcija potrebno je nekoliko rezerviranih mjesta za čuvanje informacija. Ta rezervirana mjesta moraju biti točno imenovana ili ih program neće prepoznati. Kodiranje je također potrebno za svako rezervirano mjesto, a za veliki program to može zahtijevati mnogo redaka koda. Umjesto toga, anonimna funkcija može se koristiti kao rezervirano mjesto, a obično je potrebna samo jedna umjesto više njih. Nedostatak potrebe za imenom za ovu funkciju znači da će je program odmah prepoznati i dopustiti funkciji da zadrži informacije.