The Emacs dumper dispute
The Emacs dumper dispute
Posted Dec 1, 2016 0:03 UTC (Thu) by nix (subscriber, #2304)In reply to: The Emacs dumper dispute by vadim
Parent article: The Emacs dumper dispute
Quite. What's more, we already *have* most of this sort of chase-everything machinery in place for the garbage collector, and we can serialize most types thanks to print-forms. This form of it *is* somewhat different because of the relocation/pointer-fixup stuff, but it's not really difficult stuff, just deeply fiddly, and is by any measure drastically less horrifying than the tar pit of crawling horrors that is unexec(). It's also what almost every other Lisp implementation in existence does (back in the era of my parents' parents' parents, they all used unexec()-like tricks too, but nothing still in use does, as far as I know: they've all moved to serialization or their own allocators with built-in dumping/serialization long ago; nothing else depends on special support from libc's malloc like Emacs does. Emacs is literally decades behind the times here.)
Also, anything that makes Emacs more portable is good in my book, and unexec() was a major impediment to Emacs porting. Congratulations, Daniel!
