Why is the strictness-introducing function called seq?
问题 I understand the seq function and why it's necessary to introduce strictness for efficiency. What I don't understand is, why is this primitive called seq (and not something to do with strictness)? 回答1: TL;DR: Miranda called it seq , it was introduced when sequence was (probably) already a thing for Monads, and ($!) was known as strict for a short time. Miranda was first It is called seq because it was called seq in Miranda and previous languages, at least according to A History of Haskell: