CLOS(Common Lisp Object System) supports object-oriented programming in Common LISP. It has been adopted as part of Common LISP by an ANSI standardization committee in June 1988, but no complete implementation is available yet. As a thesis research, CLOS is implemented. Major consideration is on its portability. In order to achieve a high degree of portability, Common LISP is used as the implementation language in order not to modify Lisp processors. Therefore, the result implementation can be run in any Common LISP environment. Several aspects are discussed for improving efficiency. For example, computations for handling inheritance are performed only once when needed and the results are repeatedly used. An emphasis was given to the redefinition mechanism in order to provide flexibility in object-oriented programming.