Unit type

This MedLibrary.org supplementary page on Unit type is provided directly from the open source Wikipedia as a service to our readers. Please see the note below on authorship of this content, as well as the Wikipedia usage guidelines. To search for other content from our encyclopedia supplement, please use the form below:

A unit type is a mathematical 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 product of no types.

The unit type is the terminal object in the category 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.

Unit type in programming languages

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 the functional programming languages Haskell and Clean, the unit type is called () and its only value is also (), reflecting the 0-tuple interpretation. In ML, the type is called unit but the value is written as (). In Common Lisp the type named NULL is a unit type which has one value, namely the symbol NIL. NIL itself is used as the name of the bottom type.

In C, C++, C#, and Java, void expresses the unit type. These languages do not provide any way to declare an object or represent a value with type void. In practice this feature is usually not necessary because all expressions with the unit type have the same value, and explicit values are therefore redundant. However, it may cause problems in generic programming, such as C++ templates, where void must be treated differently from other types.

References

Wikipedia content modification information:

  • This page was last modified on 2 November 2008, at 00:08.

Wikipedia Authorship and Review

Wikipedia content provided here is not reviewed directly by MedLibrary.org. Wikipedia content is authored by an open community of volunteers and is not produced by or in any way affiliated with MedLibrary.org.

Wikipedia Usage Guidelines

This article is licensed under the GNU Free Documentation License. It uses material from the Wikipedia article on "Unit type".

The URL for this specific entry is:

All Wikipedia text is available under the terms of the GNU Free Documentation License. (See Copyrights for details). Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc.