On Mon, Sep 23, 2024 at 08:34:33PM +0800, Qian Yun wrote:
> The previous discussion was titled ")savesystem , again",
> in 2016/Jun/18:
> https://groups.google.com/g/fricas-devel/c/o-P2kKKdGsM/m/T9Dr7bMRAQAJ
>
> After my recent experiences with the low-level stuff
> in FriCAS, I have the following thoughts:
>
> We already can use ")fin" to Lisp level and "(BOOT::|spad|)"
> to go back to SPAD level. What if we insert the "savesystem"
> between them?
>
> We can save the whole state of FriCAS and restore it later.
>
> 1. Run fricas with -nosman. (Avoids socket operation for now.)
>
> fricas -nosman
>
> 2. Assign some variables, run some computations.
>
> 3. Run the following to save a new executable "saved".
>
> )lisp (sb-ext:save-lisp-and-die "saved" :executable t :toplevel
> #'BOOT::|spad|)
>
> 4. Now you can continue by "./saved".
>
> Notes:
>
> 1. It will fail when you issue commands that needs new domains.
> Because the file descriptor to *.daase is closed. This should
> be easy to fix.
>
> 2. Our old code calls "|fricas_restart|" as ":toplevel" entry
> function, this caused the wipe of variables and context.
> Now if we call "|spad|", then problem is solved.
Hmm, I am not sure what you really propose. The trouble with
previous attempt at ')savesystem' was restoring frames. Now
you apparently propose running only in inital frame (that
is with '-nosman').
People messing with low level aspects of FriCAS can use functions
for saving images and manually clean up/correct discrepancies.
For normal users we need things that "work out of the box" and
nobody was willing to spend time resolving problems.
More precisely, to make ')savesytem' work somebody would have to
go trough FriCAS initialization sequence and work out which parts
of initialization should be re-done. Do too little and some things
will fail. Do too much and different things will fail (frame
problem was doing too much).
--
Waldek Hebisch
--
You received this message because you are subscribed to the Google Groups
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/fricas-devel/Z0uh6kvXQB1HzCr9%40fricas.org.