LINUX.ORG.RU

История изменений

Исправление hateyoufeel, (текущая версия) :

ну как не могу? я просто напишу

Ну да, bottom type внезапно содержит bottom. Кто бы мог подумать?

Когда в контексте Haskell говорят про пустой тип, подразумевается, что он пустой за исключением собственно bottom, которое содержится во всех типах вообще.

Хуже того, ты можешь написать вот так:

x :: Void
x = x

Но вычислить это значение ты никак не сможешь в любом случае, поэтому всё как бы ок.

если это не чит, то я как бы сдаюсь

Это не чит, это конструктивная особенность :)

Чит – это unsafeCoerce.

Исходная версия hateyoufeel, :

ну как не могу? я просто напишу

Ну да, bottom type внезапно содержит bottom. Кто бы мог подумать?

Когда в контексте Haskell говорят про пустой тип, подразумевается, что он пустой за исключением собственно bottom, которое содержится во всех типах вообще.

Хуже того, ты можешь написать вот так:

x :: Void
x = x

если это не чит, то я как бы сдаюсь

Это не чит, это конструктивная особенность :)

Чит – это unsafeCoerce.