SRFI-9 определяет макрос типа define-record.Большинство схем имеют вариант define-record, define-struct или что-то подобное, что, как я считаю, является упрощением define-record-type.
А затем многие схемы имеют некоторый тип CLOS-подобной объектной системы, такой каккак tinyclos или Chicken's Coops - оба из которых реализуют мультиметоды, что довольно приятно.
Пример Использование SRFI-9:
(define-record-type circle
(make-circle r)
circle?
(r get-radius))
Тогда в вашем REPL:
>> (define c (make-circle 12))
>> c
#<circle>
>> (get-radius c)
12
>>