Тип 30 (винтовка)
- 1 year ago
- 0
- 0
Низший тип ( нулевой тип , пустой тип ) — объект, использующийся в некоторых теориях типов и языках программирования , соответствующий типу без значений. Стандартное математическое обозначение — ( ). В рамках соответствия Карри — Ховарда низший тип соответствует логической ложной формуле.
В системах, предусматривающих , низший тип является подтипом всех типов ; при этом обратное может быть неверно — в некоторых вариантах подтип всех типов не обязательно будет низшим. В некоторых системах типов вводится двойственное понятие — высший тип , охватывающий все возможные значения в системе.
В программировании низший тип в качестве возвращаемого значения функции часто используется чтобы показать расходимость функции: когда функция не возвращает никаких результатов вызывающей стороне. Поддерживаются в
Haskell
(начиная с версии 2010),
Common Lisp
(символ
NIL
),
Scala
(
Nothing
; также используется для
ковариантности
параметризованных типов
),
Rust
(экспериментальный тип данных, обозначаемый как
!
; присутствует в сигнатуре функций, которые гарантированно не возвращают значений, например, при вызове
panic!()
или бесконечном цикле, и как возвращаемый тип для операторов потока управления, таких как
break
и
return)
,
Ceylon
(
Nothing)
,
Julia
(
Union{})
,
TypeScript
(
never
)
,
JavaScript
с аннотациями
(
!Null
),
PHP
(
never
),
Python
(
typing.NoReturn
или
typing.Never
)
,
Kotlin
(
Nothing)
,
Elm
(
Never
)
,
D
(
noreturn
)
.
{{
cite journal
}}
:
Cite journal требует
|journal=
(
справка
)