
However, Ocaml's strict evaluation makes it easy for someone new to the language to have a pretty accurate guess about its run time and memory usage something which can be difficult in the face of Haskell's lazy evaluation (not that I have experienced any obvious manifestations of this myself). Erik Speaking as "someone new to the language", this is one subject that confused me while reading RWH. They kept using the phrase "space leak" and I would think "Well, I understand that with laziness one simple call could trigger an explosion of calculations but how is that a 'leak'?" I had to go back and reread that section before I realized that the laziness was implemented as *runtime thunks* and I finally understood why they called it a "leak". Looking back I think they did a good job explaining it after all, I just totally missed it the first time through.