Я читаю "Learn You a Haskell", и в главах монады мне кажется, что () рассматривается как своего рода "нуль" для каждого типа. Когда я проверяю тип () в GHCi, я получаю
>> :t ()
() :: ()
что является чрезвычайно запутанным утверждением. Кажется, что () - это тип для себя. Я смущен тем, как он вписывается в язык, и как он, похоже, способен стоять на любом типе.