CLOS CLOS

CLOS - Definition and Overview

The Common Lisp Object System, a powerful system for object-oriented programming which forms part of Common Lisp.

CLOS differs from most other object-oriented programming environments in the following ways:

  • It offers multiple dispatch, or "multimethods".
  • Therefore, methods are not considered to live within classes; they are conceptually grouped into generic functions instead.
  • CLOS doesn't provide encapsulation; that is considered to be the job of a different part of Common Lisp, the package system.
  • Inheritance can cause methods to be combined together in arbitrarily complicated ways at the discretion of the programmer, and not merely overridden by one another.
  • CLOS is dynamic, meaning that not only the contents, but also the structure of its objects can be modified at runtime. CLOS supports changing class definitions on-the-fly (even when instances of the class in question already exist) as well as changing the class membership of a given instance through the change-class operator.

CLOS has multiple inheritance and, unofficially, a meta-object protocol.

Copyright 2009 WordIQ.com - Privacy Policy  :: Terms of Use  :: Contact Us  :: About Us
This article is licensed under the GNU Free Documentation License. It uses material from the this Wikipedia article.