Waldek Hebisch <[email protected]> writes:

> Martin Rubey wrote:
>> 
>> I just noticed that )history )save fails when the history contains
>> results from the guessing package (i.e., RECOPs).
>> 
>> Of course, I was too lazy to implement INFORM for these, but would it
>> help?  Here is the backtrace:
>> 
>
> Thanks for the backtrace.  The problem has nothing to do with
> InputForm -- simply the 'spadClosure?' function decided that
> your list is a Spad closure.  The following should fix the
> problem (I believe that currently only function can appear
> as first part of Spad closure):
>
> --- i-syscmd.boot.bb  2010-10-19 12:26:00.000000000 -0400
> +++ i-syscmd.boot     2010-10-19 12:39:08.000000000 -0400
> @@ -1894,6 +1894,7 @@
>  
>  spadClosure? ob ==
>    fun := QCAR ob
> +  not (FUNCTIONP fun) => nil
>    not (name := BPINAME fun) => nil
>    name = "WRAPPED" => nil
>    vec := QCDR ob

I tried this patch and it seems to work mostly ok.  However, I
experience the following very strange behaviour: (this is sbcl,
fricas-trunk with only the patch above applied)

----------------------------------------------------------------------
(1) -> r := guessPRec [1,1,2,3,5,8].1

   (1)  [f(n): - f(n + 2) + f(n + 1) + f(n)= 0,f(0)= 1,f(1)= 1]
                                                    Type: Expression(Integer)
(2) -> )history )save /tmp/test.fri
(1) -> )history )restore /tmp/test.fri
   All user variables and function definitions have been cleared.
   The workspace has been successfully restored from the history file 
      /tmp/test.fri.axh .
(2) -> eval(r, n=19)

   (2)  6765
                                                    Type: Expression(Integer)
(3) -> eval(r, n=19)

   (3)  [f(n): - f(n + 2) + f(n + 1) + n= 0,f(0)= 1,f(1)= 1]
                                                    Type: Expression(Integer)
(4) -> )lisp (lisp-implementation-version)
Value = "1.0.34"
----------------------------------------------------------------------

Unfortunately, the result of line (3) is random, i.e., not reproducible
consistently.  Sometimes, it happens after evaluating the second time,
sometimes after a few times, sometimes not at all.

I could not reproduce this behaviour without )save and )restore.

Any idea how to debug this?

Martin

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/fricas-devel?hl=en.

Reply via email to