Líné hodnocení

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 2. února 2019; kontroly vyžadují 3 úpravy .

Líné vyhodnocení ( angl.  lazy evaluation , též odložené hodnocení ) je výpočetní strategie používaná v některých programovacích jazycích , podle které by měly být výpočty odloženy na dobu, kdy je potřeba jejich výsledek. Líné hodnocení označuje nepřísné hodnocení . Vylepšený model líného hodnocení - optimistické hodnocení  - se posouvá do kategorie nedeterministických strategií hodnocení .

Líné výpočty umožňují snížit celkové množství výpočtů kvůli těm výpočtům, jejichž výsledky nebudou použity. Programátor může jednoduše popsat závislosti funkcí na sobě a nehlídat, aby se neprováděly „nadměrné výpočty“.

Líné hodnocení přirozeně padlo na paradigma funkcionálního programování , protože funkční programovací jazyky , které implementují líné hodnocení, se etablovaly jako nástroje vhodné pro prototypování a rychlý vývoj softwaru, stejně jako pro navrhování elektronických výpočetních zařízení .

Některé programovací jazyky, které implementují líné hodnocení:

Pro použití líného hodnocení není nutná vestavěná podpora na straně programovacího jazyka, v mnoha případech lze líné hodnocení implementovat jakýmikoli dostupnými prostředky. Například v praxi mnoha jazyků je široce používán návrhový vzorlíná inicializace “ , který předepisuje přenést provádění operací náročných na zdroje za účelem vytvoření objektů nebo získání hodnoty bezprostředně před použitím. Knihovny byly vytvořeny pro řadu jazyků, které poskytují líné hodnocení, například pro JavaScript jsou to Streams.js , linq.js , Immutable.js a node-lazy .

Odkazy