Post

I don't know the story but I think it's dubious. We understand that evaluating an expression in a pure functional programming language is like using an old desk calculator: it's useful to us because the return value is of interest. SPJ muddies the waters in that video.

One of SPJ's habits is talking airily about the FP research programme as if it was handed down by God circa 1985. It's more revealing to look at something like Landin's 1964 paper "The mechanical evaluation of expressions". Monadic IO is in that tradition, but fretting about side effects is not.