|
From: | Daniel Colascione |
Subject: | Re: When should ralloc.c be used? (WAS: bug#24358) |
Date: | Thu, 27 Oct 2016 14:07:46 -0700 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 |
On 10/27/2016 02:03 PM, Perry E. Metzger wrote:
On Thu, 27 Oct 2016 21:13:05 +0300 Eli Zaretskii <address@hidden> wrote:Date: Thu, 27 Oct 2016 11:05:03 -0400 From: "Perry E. Metzger" <address@hidden> Cc: address@hidden, address@hidden, address@hidden, address@hidden, Fabrice Popineau <address@hidden>It's a tradeoff, yes. My impression is that the rare user who redumps Emacs typically has a C compiler installed or can easily install one, so it shouldn't be much to ask.Agreed. On free operating systems it's easy (that's the whole point of freedom!), and even on non-free operating systems free compilers are available, so it isn't a big deal for most users I think. (On macOS the official XCode compiler is also available gratis.)I can assure you that installing a fully functioning environment for compiling programs is not a trivial task on MS-Windows. It isn't enough to have just a compiler: you need Binutils, support libraries and header files, and a well-configured MSYS installation to be able to run Emacs build script and Makefiles. Also, please don't forget that some people run Emacs on machines where they are not system administrators and are not allowed to install arbitrary packages. Not everyone is in the same position as you and Paul (or myself).Sure, but most people never, ever undump an Emacs either unless they're building from scratch or doing Emacs dev work...
That's because it doesn't really work. That's why I added code that explicitly stops repeated dumps. It doesn't mean I don't want to support user dumps.
It pains me to see people tolerate 30 second Emacs startup times. The daemon is a hack. I want Emacs normal mode of operation to be to start from *user* *specific* saved state --- that way, all Emacs instances can be as fast as emacs -Q.
If we need a compiler to make this happen, so be it. We'll just require libgcc, or hell, check it in to the repository, the way gcc checks in its dependencies.
An additional benefit of integrating with a compiler at runtime is the potential to JIT elisp code. Both LLVM andGCC these days have usable JIT interfaces. We could even serialize JIT traces in these user Emacs dumps.
[Prev in Thread] | Current Thread | [Next in Thread] |