Lazy languages like Haskell make it a point to be
referentially transparent, i.e. making sure that the
order in which expressions are evaluated will never
affect their result.
Isn't referential transparency a consequence of purity, not laziness?Edit: While I believe the quote is saying (albeit in a peculiar way) that lazy languages must be referentially transparent, I don't see how this particular response was arguing in favor of laziness. Referential transparency is great as an optimization enabler, which provides one compelling case for purity.
Meanwhile I'm working on a nascent project to develop an eager, pure language that targets LLVM.