Concept

Unit type

Summary
In the area of mathematical logic and computer science known as type theory, a unit type is a type that allows only one value (and thus can hold no information). The carrier (underlying set) associated with a unit type can be any singleton set. There is an isomorphism between any two such sets, so it is customary to talk about the unit type and ignore the details of its value. One may also regard the unit type as the type of 0-tuples, i.e. the of no types. The unit type is the terminal object in the of types and typed functions. It should not be confused with the zero or bottom type, which allows no values and is the initial object in this category. Similarly, the Boolean is the type with two values. The unit type is implemented in most functional programming languages. The void type that is used in some imperative programming languages serves some of its functions, but because its carrier set is empty, it has some limitations (as detailed below). Several computer programming languages provide a unit type to specify the result type of a function with the sole purpose of causing a side effect, and the argument type of a function that does not require arguments. In Haskell, Rust, and Elm, the unit type is called () and its only value is also (), reflecting the 0-tuple interpretation. In ML descendants (including OCaml, Standard ML, and F#), the type is called unit but the value is written as (). In Scala, the unit type is called Unit and its only value is written as (). In Common Lisp the type named is a unit type which has one value, namely the symbol . This should not be confused with the type, which is the bottom type. In Python, there is a type called NoneType which allows the single value of None. In Swift, the unit type is called Void or () and its only value is also (), reflecting the 0-tuple interpretation. In Java, the unit type is called Void and its only value is null. In Go, the unit type is written struct{} and its value is struct{}{}. In PHP, the unit type is called null, which only value is NULL itself.
About this result
This page is automatically generated and may contain information that is not correct, complete, up-to-date, or relevant to your search query. The same applies to every other page on this website. Please make sure to verify the information with EPFL's official sources.