Subject: Re: RFC about "Object Oriented Programming in Common Lisp"
From: Erik Naggum <>
Date: 2000/06/15
Newsgroups: comp.lang.lisp
Message-ID: <>

* Michael Abd-El-Malek <>
| Coming from a C++/Java background, I'm deeply routed in OOP
| techniques (for better or for worse?!), so I've already played with
| CLOS.  However, it seemed to me that doing things in CLOS is
| sometimes fundamentally different from the way you would do things
| in C++.

  OOP techniques are generally good, when applied within reason.  C++
  is a bad instantiation of them and encourages bad use of OOP
  techniques.  CLOS is a good instantiation of them and discourages
  bad use of OOP techniques.  This leads to some cultural clashes.

| On the subject, another good question would be: should I try to
| program in Common Lisp using OOP techniques, or should I stick to
| the more traditional functional programming paradigm of Lisp?  What
| has worked for you guys?!

  If you can shed the C++ heritage and ignore the urge to let classes
  _own_ methods, as well as ignore the urge to control _ownership_ of
  data, you'll have no problems.  Since more than half of C++'s stupid
  implementation of OOP is about ownership control, this may be hard.

  If this is not what you expected, please alter your expectations.