The special type *Nothing* represents:

- the intersection of all types, or, equivalently
- the empty set

*Nothing* is assignable to all other types, but has no instances.
A reference to a member of an expression of type *Nothing* is always an error, since there can never be a receiving instance.
*Nothing* is considered to belong to the module *ceylon.language*. However, it cannot be defined within the language.

Because of the restrictions imposed by Ceylon's mixin inheritance model:

- If X and Y are classes, and X is not a subclass of Y, and Y is not a subclass of X, then the intersection type X&Y is equivalent to
*Nothing*. - If X is an interface, the intersection type X&Nothing is equivalent to
*Nothing*. - If X<T> is invariant in its type parameter T, and the distinct types A and B do not involve type parameters, then X<A>&X<B> is equivalent to
*Nothing*.

*no type hierarchy*

*no supertypes hierarchy*

*no subtypes hierarchy*