Русская Википедия:Низший тип
Низший тип (нулевой тип, пустой тип) — объект, использующийся в некоторых теориях типов и языках программирования, соответствующий типу без значений. Стандартное математическое обозначение — Шаблон:Нп5 (<math>\bot</math>). В рамках соответствия Карри — Ховарда низший тип соответствует логической ложной формуле.
В системах, предусматривающих подтипы, низший тип является подтипом всех типов[1]; при этом обратное может быть неверно — в некоторых вариантах подтип всех типов не обязательно будет низшим. В некоторых системах типов вводится двойственное понятие — высший тип, охватывающий все возможные значения в системе.
В программировании низший тип в качестве возвращаемого значения функции часто используется чтобы показать расходимость функции: когда функция не возвращает никаких результатов вызывающей стороне. Поддерживаются в Haskell (начиная с версии 2010), Common Lisp (символ NIL
), Scala (Nothing
; также используется для ковариантности параметризованных типов), Rust (экспериментальный тип данных, обозначаемый как !
; присутствует в сигнатуре функций, которые гарантированно не возвращают значений, например, при вызове panic!()
или бесконечном цикле, и как возвращаемый тип для операторов потока управления, таких как break
и return)
[2], Ceylon (Nothing)
[3], Julia (Union{})
[4], TypeScript (never
)[5][6], JavaScript с аннотациями Шаблон:Нп5 (!Null
), PHP (never
), Python (typing.NoReturn
или typing.Never
)[7], Kotlin (Nothing)
[8], Elm (Never
)[9], D (noreturn
)[10].
Примечания
Ссылки
Шаблон:Типы данных Шаблон:Языки программирования