In CLOS, instance remorphing considered useless in practice?
jean.claude.beaudoin at gmail.com
Wed Dec 9 10:01:46 UTC 2020
On Wed, Dec 9, 2020 at 4:36 AM Hans Hübner <hans.huebner at gmail.com> wrote:
> Am Mi., 9. Dez. 2020 um 09:10 Uhr schrieb Jean-Claude Beaudoin <
> jean.claude.beaudoin at gmail.com>:
>> I would love to see languages with better support for redefinition.
>>> Like unison, or darklang. Unhappily,
>>> update-instance-for-redefined-class, while very cool, is *not enough*.
>> My point is that it is already too much.
> "I don't want to silence a lively discussion, but" several people have
> made the point that they found CLOS's mechanisms to deal with class
> redefinition useful. I can add myself to the list: When I was writing a
> CLOS based database system, I used CHANGE-CLASS and the associated helper
> methods to support schema evaluation. It did not work perfectly for all
> cases, but it worked well enough and felt like the MOP API was made exactly
> for this kind of thing.
> Given the discussion until now, Jean-Claude, what is it that you're trying
> to accomplish with this debate?
I am curious to survey the state-of-the-experience-so-far on this issue.
> Are you up for proving that the MOP is "wrong"?
No, not "wrong" on any "essential" point at least.
> You have repeatedly indicated that this would be your opinion.
Had no awareness that I did so up to this point.
> If so, are you trying to create a new version of the MOP that would not
> include class redefinition hooks?
No, I still consider AMOP to be part of the holy scriptures of Common Lisp.
> Or are you up for creating a new Lisp or a new Lisp object system that is
> inspired by the MOP but somehow different?
I am not that ambitious. (And make it fly on the top of it, man! I would be
out of my mind, wouldn't I?)
> I think the ship has sailed anyway. Common Lisp, CLOS and the MOP are
> what they are. I still think they're beautiful, but they are also a
> product of the era in which they were created. Time has not stood
> still, and 20 years have passed without CL having changed or adapted to any
> new developments in computing. Even though in many respects, Common Lisp
> has aged well, there are areas in which the language itself is in the way
> of adapting to the modern world. Multiple threads come to mind, as do cons
> cells and CLOS, too. What else is there? I'd be interested in reading
> I like using CL when I know that I don't need scalability and when I know
> that I'll be the only developer of the program that I'm writing. Under
> these circumstances, I enjoy it very much because it caters for this
And I'd like it with scalability too, how about that? The "only developer"
part I simply do not get. What is the deal with the solitary state here?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the pro