Builtin classes
The runtime MUST provide the following classes:
| Class | Description |
|---|---|
term |
Contains everything, all other classes are subsets of this one |
atom |
Contains all atoms (ie. @ok, @error, ...) |
bool |
Contains true and false |
number |
Contains all numbers (ie. 1, 2.3, ...) |
int |
Contains all integers, it is a subset of number |
string |
Contains all strings (ie. "hello world") |
list<T> |
Contains all lists where their elements are of class T |
proplist<T> |
Contains all lists where their elements are of class (atom, T) |
pid |
Opaque class that contains all process identifiers |
iocap |
Opaque class that contains all IO capabilities |
Each Letlang value is also a singleton type, the runtime MUST provide an implementation for such types.
The runtime MUST provide an implementation for tuple types and named tuple types.