Re: The wisdom of the object mentors (Was: Searching OO Associations with RDBMS Persistence Models)

From: Patrick May <pjm_at_spe.com>
Date: Tue, 04 Jul 2006 07:42:46 +0100
Message-ID: <m24pxx6fbt.fsf_at_Dagney.local>


"topmind" <topmind_at_technologist.com> writes:

> Patrick May wrote:

>> "topmind" <topmind_at_technologist.com> writes:
>> > Sure, some parameters may be nouns, but which noun gets to be King
>> > Noun? Rather than arbitrarily promote one, make them *all*
>> > parameters.
>> >
>> > noun1.doX(noun2, noun3); // artificial promotion of a noun One
>> >
>> > Versus:
>> >
>> > doX(noun1, noun2, noun3); // equal footing
>>
>> This is an issue with languages that support only single
>> dispatch, not with OO in general. Common Lisp's CLOS allows exactly
>> what you describe in your second example, while providing strong
>> support for OO.
>
> You mean predicate-based algorithm look-up? Sounds like TOP-ish
> relational to me. (And/or Prolog-like perhaps.)

     Unlike C++ and Java, CLOS methods are not "owned" by particular
classes. Generic methods in CLOS are specialized for one or more classes. The most specific available generic method is selected at run time.

     Peter Seibel has made his "Practical Common Lisp" available on the web at http://www.gigamonkeys.com/book and there are many other sources of information. Learning CLOS will change the way you view other OO languages.

Regards,

Patrick



S P Engineering, Inc. | The experts in large scale distributed OO
                       | systems design and implementation.
          pjm_at_spe.com  | (C++, Java, Common Lisp, Jini, middleware, SOA)
Received on Tue Jul 04 2006 - 08:42:46 CEST

Original text of this message