Now I have a series of 7 patches, hopefully to solve this problem.
You can view them in attachment or at https://github.com/oldk1331/fricas/commits/stats I'm not very sure about "reinit stats global variables when error happens". Is "int_loop" the right place to reset $timedNameStack when error happens? (e.g. "1/0"). - Qian On 12/11/23 09:18, Waldek Hebisch wrote:
There is trouble with recusive calls to intepreter. Ralf reported
problem with use of 'systemCommand("read foo.input")', after
fixing part of it I got a hang. Earlier, doing
s := "1 + 1"
interpret_block(s)$Lisp
we got a hang. I now found the reason: recursive call to
intepreter mangles '$timedNameStack' (and other timing
variables) causing infinite loop in statisctics code.
I am not sure what is proper fix for this (more precisely,
how should we time recursive calls). The attached patch
works around infinite loop and fixes abort when doing 'read'
as system command.
-- 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 on the web visit https://groups.google.com/d/msgid/fricas-devel/0aa37efa-3d3c-463d-b316-b9abc8358fc2%40gmail.com.
stats-patches.tar
Description: Unix tar archive
