Sembra che una valutazione pigra delle espressioni possa far perdere al programmatore il controllo sull'ordine in cui il suo codice viene eseguito. Ho difficoltà a capire perché questo sarebbe accettabile o desiderato da un programmatore.
Come può essere usato questo paradigma per costruire software prevedibile che funzioni come previsto, quando non abbiamo alcuna garanzia su quando e dove verrà valutata un'espressione?
head . sort
ha O(n)
complessità per pigrizia (non O(n log n)
). Vedi Valutazione pigra e complessità temporale .