Entry tags:
Про seq
Как известно seq вычисляет свой первый аргумент до слабой заголовочной нормальной формы (WHNF). Не пользуясь GHCi, ответьте на вопрос, каково будет значение следующего выражения
Prelude> (\True y -> ()) False `seq` 5Проверьте себя в GHCi. Какова будет полученная в первом аргументе seq WHNF? UPD. А теперь вопрос на засыпку: каково будет значение следующего выражения
Prelude> (\True -> \y -> ()) False `seq` 5Считаете ли вы это правильным?
no subject
Если \P Q -> r истолковывается как \p -> \q -> patternmatching etc...,
то сзнф от частичного применения будет одноместной функцией с отложенным сопоставлением.
То есть, по сути, (\y -> (error "ничего не сопоставилось") :: ()).