[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: s-exprs + prototypes
- To: Pascal Costanza <address@hidden>
- Subject: Re: s-exprs + prototypes
- From: "Michael St . Hippolyte" <address@hidden>
- Date: Wed, 25 Jun 2003 16:20:53 -0400
- Cc: address@hidden
- In-reply-to: <20030625144720.A9458@localhost.inet>; from firstname.lastname@example.org on Wed, Jun 25, 2003 at 14:47:20 -0400
- References: <20030625144720.A9458@localhost.inet>
- Sender: address@hidden
On 2003.06.25 13:52 Pascal Costanza wrote:
> The object-oriented paradigm is deeply rooted in a very specific perception
> of reality. It is essentially an understanding of reality as instantiated in
> the physics of Newton and defended on a philosophical level by Kant. The
> idea is that that the world is made of separate entities that communicate
> solely via proximal effects. In OOP terms, objects send messages to each
> other and each object can react to messages in its own terms.
It's a bit more than that. It's Newton (encapsulation) plus Darwin
(inheritance) plus Einstein (polymorphism).
> The Lisp paradigm is rooted in the belief that there is no single right
> perception of reality. Instead, a language has to provide the building
> blocks that allow you to reconstruct any perception of the world.
Perhaps, but the building blocks that Lisp uses are a particular
kind of building block, following a particular paradigm. And there's
nothing special about being able to construct other paradigms out of
Lisp's building blocks -- the building blocks of any Turing-complete
language have the same capability. Indeed, one of the main appeals of
object systems is their suitability for modeling other systems.
I do agree that Lisp's approach is more fundamental than OO as
generally implemented. But it's not so fundamental as to be beyond
paradigm. And, I'm convinced, OO can be made more fundamental too,
if implemented in a functional rather than imperative style.
Michael St. Hippolyte