# Размещение объектов Экземпляр класса во время исполнения представлен структурой объекта с массивом значений полей: ``` typedef struct { fzl_value_t *values; size_t values_count; } fzl_vm_object_t; ``` Поля получают последовательные индексы в порядке объявления. Таблица класса хранит имя поля, тип и `slot_index`. Поэтому `object.field` компилируется в `GET_FIELD` или `SET_FIELD` с числовым индексом. Выражение `new ClassName` проверяет наличие класса и генерирует `ALLOC_OBJECT N`, где `N` — число полей. Сравнение объектов проверяет указатели. При уничтожении окружения освобождаются принадлежащие ему объекты и массивы их значений. При возврате объекта из вложенного окружения `ESCAPE_OBJECT` переносит владение в родительское окружение.