[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Preview: portable dumper

From: Eli Zaretskii
Subject: Re: Preview: portable dumper
Date: Thu, 01 Dec 2016 20:09:16 +0200

> From: Richard Stallman <address@hidden>
> CC: address@hidden, address@hidden
> Date: Thu, 01 Dec 2016 04:18:03 -0500
> I sympathize with your general point, but I don't think it is
> conceivable to make Emacs's C code much simpler or easier to maintain
> than it is now.

I agree.

However, this is not about making existing code simpler.  It's about
_adding_ more C code, where an alternative implementation might allow
doing that without such additions.

> Also, I don't think the portable dumper would increase the conplexity,
> not if it is written cleanly.

It's a new and significant mechanism, which is central to building and
starting Emacs.  It needs to be studied, understood, and maintained.
Therefore, it does increase the complexity.  You might argue that the
increase in complexity is not significant enough to worry about, but
it's definitely there.

> To increase the _number_ of modules that look at Lisp objects with a
> given level of complexity does not increase the complexity.

It's not just the number of modules, it's what they do with the
objects.  The dumper does qualitatively different things, unlike any
other module in Emacs.  It's not just "more of the same".

> When changing the data structures, it is no harder to update 4
> places than 3 places.  It adds a little more work, but it isn't
> _harder_ work.

Well, if I need to do more work, the job is harder.

> I conclude that the portable dumper won't make it any harder to
> find people to work on the C code.

I agree with that conclusion.  However, my problem is that, since
finding such people is already hard, making more Emacs modules depend
on that might expose us to more future maintenance problems than if we
don't.  Especially if those modules are so central to Emacs as the one
being discussed here.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]