Какова связь между распакованными типами и строгостью?
Распакованные типы, такие какInt#
и строгие функции, такие какf (!x) = ...
, это что-то другое, но я вижу концептуальное сходство - они каким-то образом запрещают громы и лень. Если бы Haskell был строгим языком, таким как Ocaml, каждая функция была бы строгой, а все типы были распакованы. Какова связь между распакованными типами и соблюдением строгости?