🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.clos
Article #114

Re: Functional Interfaces and CLOS Metaobject Protocols

#114
From: Jeff Dalton
Date: Thu, 10 Sep 1992 18:50
25 lines
1610 bytes
An interesting (at least to me), semi-philosphical question is 
this: exactly what is the constribution of the MOP?

There's talk, in the AMOP book and other places, about how a MOP
breaks down the distinction between programmers and language
designers; but the same can be said of Lisp itself.  (For an
instance of where it has been said, see McCarthy's paper in
the 1980 Lisp Conference.)

There's also some talk about the MOP letting you combine
customizability with efficiency, but that's also a goal in
plain Lisp.  It's why we have compiler macros and the like.

What we might do in ordinary Lisp is this, there would be a
set of "good primitives", new ways of doing things would be
defined as functions, and compiler macros could be used to
tell the compiler how to compile them efficiently.

Unfortunately, the "good primitives" are often missing.  (Eg,
look at all the people who want a bit more control over DEFSTRUCT.)
The main thing the MOP provides (imho) is a set of good primitives
in a certain area.  The main things it fails to provide (as yet)
is a way to tell the compiler what it needs to know.

-- jd
Technical Details
Message-ID: <20024.9209101850@subnode.aiai.ed.ac.uk>
Path: arc1-ca.pugleaf.net!sparky!uunet!usc!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!aiai.edinburgh.ac.uk!jeff

Show Full Headers
Complete Article Headers
Newsgroups: comp.lang.clos
Path: arc1-ca.pugleaf.net!sparky!uunet!usc!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!aiai.edinburgh.ac.uk!jeff
From: jeff@aiai.edinburgh.ac.uk (Jeff Dalton)
Subject: Re: Functional Interfaces and CLOS Metaobject Protocols
Message-ID: <20024.9209101850@subnode.aiai.ed.ac.uk>
Sender: daemon@cis.ohio-state.edu
Organization: The Ohio State University Department of Computer and Information Science
Date: Thu, 10 Sep 1992 18:50:54 GMT
Lines: 25