Просмотр исходного кода прелюдии вызывает странности

Я искал определение seq и наткнулся на эту странность. Почему все эти функции имеют одинаковые / похожие определения?

seq :: a -> b -> b
seq = let x = x in x

inline :: a -> a
inline = let x = x in x    

lazy :: a -> a
lazy = let x = x in x

В исходном коде есть еще много других с этим определением. Что происходит?

15
задан Matthias Braun 27 February 2018 в 16:16
поделиться