CLOS

CLOS (англ. Common Lisp Object System — «объектная система Common Lisp’а») — мощная система объектно-ориентированного программирования, являющаяся частью Common Lisp — диалекта языка Лисп.

CLOS имеет следующие отличия от других систем объектно-ориентированного программирования:

  • Множественная диспетчеризация (то есть вызываемый метод определяется всеми аргументами, а не только первым), или «мультиметоды».
  • Поэтому методы не определяются внутри классов. Они концептуально группируются в «обобщённые методы».
  • CLOS не обеспечивается сокрытия. Сокрытие обеспечивается другой частью Common Lisp — пакетами.
  • Наследование может приводить к тому, что методы суперклассов комбинируются различными способами по выбору программиста, а не только простым переопределением.
  • CLOS является динамическим, то есть не только содержимое, но и структура объектов может меняться во время работы программы. CLOS поддерживает изменение структуры класса на лету (даже если экземпляры данного класса уже существуют), равно как и смену класса данного экземпляра с помощью метода CHANGE-CLASS.

CLOS поддерживает множественное наследование и нестандартизированный метаобъектный протокол.


 
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home