As mentioned earlier, every value has a type it belongs to. Each type establishes all its permissible data values, determines how those values are digitally encoded, and specifies what operations can be performed on values of that type.

Cone offers a comprehensive repertoire of types:

As you will see explored later, Cone's type system supports a rich and useful variety of semantics:

Let's start our type journey by introducing a number of the concrete types listed above. Later on, references and traits will be covered separately.

These pages will focus on how to define the structure of these type's data values. Subsequent pages will show how to also specify a type's functional behavior in the form of methods.