Next: mpg-ref-see, Previous: mpg-ref-save_predicates, Up: mpg-bpr [Contents][Index]
save_program/[1,2]
save_program(+File)
save_program(+File, +Goal)
Saves the state of the current execution in object format to File. A goal, Goal, to be called upon execution/restoring of the saved state, may be specified.
file_spec, must be ground
A file specification, ‘.sav’ extension optional.
callable, must be nonvar
A goal, defaults to true
.
save_program/[1,2]
creates a binary representation of all
predicates in all modules existing in the system. However, it does
not save the user’s pre-linked code. It also saves such states of the
system as operator definitions, Prolog flags, debugging and advice
state, initializations, and dependencies on foreign resources.
The resulting file can be restored using restore/1
.
Any unbound variables in Goal with attributes or blocked goals
attached to them will be replaced by plain, brand new variables. This
is analogous to the way attributed variables are handled in terms that
are written, copied, asserted, gathered as solutions to
findall/3
and friends, or raised as exceptions. To retain the
attributes, you can use copy_term/3
(see ref-lte-cpt).
instantiation_error
File or Goal is not bound.
type_error
File is not a valid file specification, or Goal is not a callable.
permission_error
File is not writable.
| ?- save_program(state, format('Restored!\n',[])). % /home/matsc/sicstus4/Bips/state.sav created in 0 msec yes | ?- restore(state). % restoring /home/matsc/sicstus4/Bips/state.sav... % /home/matsc/sicstus4/Bips/state.sav restored in 10 msec 16 bytes Restored! yes
restore/1
, Saving,
ref-sls, ref-sls-sst.