In CLOS, instance remorphing considered useless in practice?

Hans Hübner hans.huebner at gmail.com
Wed Dec 9 09:35:16 UTC 2020


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?  Are you up for proving that the MOP is
"wrong"? You have repeatedly indicated that this would be your opinion.  If
so, are you trying to create a new version of the MOP that would not
include class redefinition hooks?  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 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 opinions.

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
setting.

-Hans
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/pro/attachments/20201209/4f83fa54/attachment.html>


More information about the pro mailing list