Is there a way to go back to last state of the runtime? In short, save the runtime and reload it. But the core image is too big (I'm making a small game :-), so I come up with an idea, save some important data, and start running at certain line (maybe also the stack info).
For example:
(defun save ()
_do-some-magic-to-save-the-state-and-then-exit_)
(defvar data (list 'a 'b 'c)) ; important data
(format t "Hello ")
(save)
(format t "World!~%")
Next time, the software can start at the point where it stopped.
$ software
Hello $ software
Hello $ software --load saved_state
World!
But I don't know how to do this in Common Lisp at all... Could someone please give me some ideas?