12.7 Упражнения |
Предыдущая Содержание Следующая |
Если retrieve() отслеживает исходный адрес каждого объекта и создает только новые, необходим способ пропустить часть потока до конца объекта. Для динамической загрузки совместно используемых объектов System V предоставляет функции dlopen(), dlsym() и dlclose(). retrieve() могла бы использовать эту технологию, чтобы загружать модуль класса по имени. Модуль класса содержит описание класса вместе со всеми методами. Не вполне ясно, однако, как можно было бы получить доступ к вновь загруженным селекторам. value может быть расширен с помощью управляющих структур так, чтобы функции были более мощными. В этом случае stmt() должен быть разделён на истинные операторы, подобные let, и команды, подобные save, load или def.
|
Предыдущая Содержание Следующая |