ランタイムの最後の状態に戻る方法はありますか? つまり、ランタイムを保存して再ロードします。しかし、コア イメージが大きすぎるので (私は小さなゲームを作成しています :-)、アイデアを思いつき、いくつかの重要なデータを保存し、特定の行 (おそらくスタック情報も) で実行を開始します。
例えば:
(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!~%")
次回は、停止したところからソフトウェアを起動できます。
$ software
Hello $ software
Hello $ software --load saved_state
World!
しかし、Common Lisp でこれを行う方法がまったくわかりません... 誰かアイデアを教えてください。