On Wed, Dec 9, 2020 at 4:36 AM Hans Hübner <hans.hueb...@gmail.com> wrote:
> Am Mi., 9. Dez. 2020 um 09:10 Uhr schrieb Jean-Claude Beaudoin < > jean.claude.beaud...@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 > 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. > > 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? > -Hans >