
How Does Lazy Evaluation Work in Haskell? (2014) - gbrown_
https://apfelmus.nfshost.com/articles/lazy-eval-intro.html
======
gbrown_
The first in a series of articles, a list of which can be found here
[https://apfelmus.nfshost.com/articles/lazy-
eval.html](https://apfelmus.nfshost.com/articles/lazy-eval.html)

------
amelius
See also Peyton Jones' book (from 1987):

[https://www.microsoft.com/en-us/research/publication/the-
imp...](https://www.microsoft.com/en-us/research/publication/the-
implementation-of-functional-programming-languages/)

~~~
teh
I just spent some time implementing a lazy VM: Note also the push/enter VS
eval/apply implementation change in GHC described in [1].

[1] [https://www.microsoft.com/en-us/research/publication/make-
fa...](https://www.microsoft.com/en-us/research/publication/make-fast-curry-
pushenter-vs-evalapply/)

------
jganetsk
Here's an educational video on the topic:
[https://www.youtube.com/watch?v=LW3HZwBDpiU](https://www.youtube.com/watch?v=LW3HZwBDpiU)

