функция seq и строгость
Я много размышлял об этом, но не смог ничего найти по этому поводу.
При использованииseq
функция, как это тогдаreally Работа? Везде просто объясняется, чтоseq a b
оцениваетa
, отбрасывает результат и возвращаетb
.
Но что этоreally имею в виду? Будет ли следующий результат в строгой оценке:
foo s t = seq q (bar q t) where
q = s*t
Я имею в виду, чтоq
строго оценены перед использованием вbar
? И будет ли следующее эквивалентно:
foo s t = seq (s*t) (bar (s*t) t)
Я немного затрудняюсь разобраться в функциональности этой функции.