If it is possible, what are the necessary steps?
If it is not, what are the technical reasons?
(Prompted by a recent question: Restart emacs from within emacs.)
The state as I see it consists of all the symbols and their bindings, i.e. the environment described in Intro Eval. Resetting is returning to a previous state; this could be a manually stored state or the initial state of the interpreter (corresponding to "starting from scratch").
I realize that Emacs is not a closed system, so anything having to do with its environment is out of our control, but saving and loading an "Elisp core dump" should be possible in theory.
Making sure that changes in
.emacs and such take effect is a possible (although silly) application, but I believe this could be useful for debugging elisp code, too.