Важность возможности сочетания объектов
Абстракция данных - это мощная методология проектирования, общий метод отделения
Интерфейсом между двумя этими частями системы служит набор процедур, реализующих абстрактные данные в терминах конкретного представления. Наиболее значимые из них называются селекторами (в Коммон Лисп предпочитают англ. термин reader) и конструкторами.
Подобный подход "сокрытия реализации" порождает так называемые абстрактные типы данных и соответствует принципу инкапсуляции в объектно-ориентированном программировании.
Барьеры абстракции между частями и удобство их "возведения" обуславливают качество языка программирования, возможность справляться со сложностью.
(numerator 3/4) ⇒ 3 ; селектор, или reader (denominator 3/4) ⇒ 4 ; селектор (/ 3 4) ⇒ 3/4 ; конструктор (+ 3/4 5/8) ⇒ 11/8 ; операция над представлениями