CL-STORE is a package originally written by Sean Ross
for serializing and deserializing CL objects from streams.
It is maintained by Leslie P. Polzer and Brit Butler.
A test suite is included to ensure reliability.
CL-STORE is licensed under the MIT Licence.
;; Store a class and instance cl-user(1): (defclass foo () ((bar :accessor bar :initarg :bar))) cl-user(2): (cl-store:store (list (find-class 'foo) #'bar (make-instance 'foo :bar "bar")) "test.out") ;; Then restore them in a fresh lisp session cl-user(1): (let ((vals (cl-store:restore "test.out"))) (funcall (second vals) (third vals))) => "bar"
CL-STORE currently supports serialization of
Clisp, OpenMCL and Allegro CL do not support serializing structure instances.
Serialization of functions and closures is not supported at this time.
Use Quicklisp to install cl-store quickly.
The latest source and tarballs are available on GitHub.