Интерфейсы описывают наборы функций.
Структуры описывают наборы данных.
Класс реализовывает интерфейсы и ... (что делает?) структуры.

Функции содержат объявление.
Функции содержат код.

Интерфейсы (включают в себя (?)) объявления.
Интерфейсы расширяют другие интерфейсы.

Структура дополняет (?) (включает в себя  (?)) другие структуры.
Структура реализовывает (использует (?)) интерфейсы.

Классы наследуются от других классов.
Классы реализовывают интерфейсы.
Классы содержат функции.
Классы агрегируют (?) структуры.

Все они - типы.

Типажи (trait)
наследуются ли типажи друг от друга?
Типажи частично реализовывают интерфейсы
Типажи содержат функции

Примеси (mixin)
наследуются ли примеси друг от друга? а от типажей?
Примеси частично реализовывают интерфейсы
Примеси аггрегируют (?) структуры.
Примеси содержат функции

являются ли примеси и типажи типами?

вобщем, есть чувство какой-то терминологической непроработанности.

Например тип "ничто" (void). Наверное это структура с нулевым размером.
Через рефлексию наверное можно создать объект такого типа. Или нельзя?

Отредактировано Лис (2017-04-14 00:26:46)