Русская Википедия:Низший тип

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Низший тип (нулевой тип, пустой тип) — объект, использующийся в некоторых теориях типов и языках программирования, соответствующий типу без значений. Стандартное математическое обозначение — Шаблон:Нп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].

Примечания

Шаблон:Примечания

Ссылки

Шаблон:Типы данных Шаблон:Языки программирования