Любое выражение имеет тип. Выражения состоят из следующих элементов:
- Целая числовая константа (0 3 234);
- Вещественная числовая константа. Дробная часть отделяется от целой точкой (".") (3.14 2.71);
- Строковая константа. Заключается в апострофы. ('Some string' '10', '01.01.2006' 'now');
- Логическая константа (True False);
- Безтиповая (любого типа) константа nil;
- Зарезервированное слово Self. Обозначает разный объект в зависимости от контекста:
- В методах класса кроме конструктора - использование запрещено.
- В методах экземпляра - всегда экземпляр, для которого вызван метод.
- В конструкторе - до вызова унаследованного метода значение не определено. После вызова - ссылка на сконструированный объект.
- В выражениях условий отбора - объект, для которого принимается решение о его вхождении в отбор.
- Квалификатор.
- Агрегат.