Liliana Marie Prikler writes: > From personal experience, no. Even if you compile code ahead of time, > there seem to be some leftovers that are deferred. guix-emacs.el is an > oversight, but apart from that I also other leftovers (possibly from > init.el?) AFAIU, the compiler is invoked any time a function is redefined or advised, see (info "(elisp) Advising Functions"). In Emacs it is a very common paractice to put advices around a function to modify its behaviour. Since this happens during runtime (for example, in response to a hook, or after you manually run some command), you should accept the fact that native compiler may be invoked at any time as you use Emacs. > In Guix, this is more or less a user choice – we advertised the > transformation by which you can opt-in to AOT compilation in a news > entry. Also, enforcing ahead-of-time compilation does not fix the more > pressing issue of packages breaking with native compilation ;) How pressing is this issue? There are literally no reports of packages breaking due to native compilation. So this is probably the reason why Eli considers it as a non-issue. > To quote Eli: >> More generally, we never expected people who have Emacs with native >> compilation available to want to disable it. It made no sense to us >> during development of Emacs 28, and frankly, it still doesn't, at >> least to me. > I think this reasoning really falls flat in presence of any non-Emacs > package manager. Like, obviously wanting to natively compile packages > managed by (dpkg, rpm, pacman, emerge, guix), but not natively > compiling a random elisp script you just downloaded from the web is a > legitimate use case. If security is a concern, you should not load random Elisp in the first place. It is much easier to just directly run harmful elisp, then to exploit native compiler, which stays silent until after you evaluate some (possibly harmful) elisp.