[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Emacs-diffs] master cd06d17: Fix bug with face-id after restoring f
Re: [Emacs-diffs] master cd06d17: Fix bug with face-id after restoring from pdump
Mon, 28 Jan 2019 22:19:55 +0200
> Date: Mon, 28 Jan 2019 11:37:07 -0800
> From: "Daniel Colascione" <address@hidden>
> Cc: "Daniel Colascione" <address@hidden>,
> > Based on previous discussion regarding frames and faces, I was under
> > the impression that you prefer moving stuff to the startup of emacs.
> > I'm not wed to my solution, feel free to change if you think it's
> > better.
> The default approach to pretty much anything should be to use the first
> entry in this implementation strategy that will work for a particular
> 1) Write it in Lisp
> 2) Write it in C using Lisp data structures
> 3) Use custom data structures in C, but allocated from the Lisp heap
> 4) malloc some random stuff for a pure-C approach
> Right now, the face stuff is #3, but I think we could move it to #2 using
> the approach in my previous message (just using an ordinary staticprod
> Lisp_Object instead of a Lisp_Object* with a size field). Approaches #3
> and #4 need special code for pdumper to work, but #1 and #2 Just Work, and
> to the greatest extent possible, we should use #1 or #2 for new feature
> work too. It'll reduce the total amount of code we need.
I wasn't talking about the implementation language and other details,
I was talking about whether some initialization should be recorded in
the pdump file or re-done anew in the emacs session. When something
doesn't "just work" after restoring from pdump, the question is
whether you add code to make it work as in unexec, or you just
recompute the necessary variables in emacs.