Martin Rubey <[EMAIL PROTECTED]> writes:

> Yet another problem:
> 
> (1) -> solve(log 3/log x + log 27/log x = 2, x)
> 
>               log(27) + log(3)
>               ----------------
>                       2
>    (1)  [x= %e                ]
>                                     Type: List(Equation(Expression(Integer)))
> (2) -> )history )save /home/martin/martin/TeXSource/Uebungen/CA/vorkurs3.fri
>    Edit /home/martin/martin/TeXSource/Uebungen/CA/vorkurs3.fri.input to
>       see the saved input lines.
>    Can't save the value of step number 1 . You can re-generate this 
>       value by running the input file 
>       #P"/home/martin/martin/TeXSource/Uebungen/CA/vorkurs3.fri.input" .
>    The saved history file is 
>       /home/martin/martin/TeXSource/Uebungen/CA/vorkurs3.fri.axh .
> 
> ???

I just checked, this bug is due to the speedup patch to SPADCALL.  It fails
already on log x.  The reason is in writifyInner from i-syscmd.boot where we
check whether its argument ob is a compiled function.

This is triggered for newGoGet.  I put some debugging messages into
writifyInner:

        writifyInner ob ==
            null ob                => nil
            (e := HGET($seen, ob)) => e
 
            PAIRP ob =>
                sayMSG '"writify: PAIRP ob"
                sayMSG ob
                qcar := QCAR ob
                qcdr := QCDR ob
...

            -- In CCL constructors are also compiled functions, so we 
            -- need this line:
            constructor? ob => ob
            COMPILED_-FUNCTION_-P ob =>
                sayMSG '"writify: COMPILED_-FUNCTION_-P"
                sayMSG ob
                THROW('writifyTag, 'writifyFailed)

this yields the following output when trying to do

log x
)hist )save test

-------------------------------------------------------------------------------
(snip)

writify: PAIRP ob
((%diff (#<FUNCTION |BOP1;derivative;BoMBo;7!0|> . UNPRINTABLE)) (%eval
#<FUNCTION |BOP1;evaluate;BoMBo;1!0|> . UNPRINTABLE) (elem))
writify: PAIRP ob
(%diff (#<FUNCTION |BOP1;derivative;BoMBo;7!0|> . UNPRINTABLE))(%eval
#<FUNCTION |BOP1;evaluate;BoMBo;1!0|> . UNPRINTABLE)(elem)
writify: PAIRP ob
%diff(#<FUNCTION |BOP1;derivative;BoMBo;7!0|> . UNPRINTABLE)
writify: PAIRP ob
(#<FUNCTION |BOP1;derivative;BoMBo;7!0|> . UNPRINTABLE)
writify: PAIRP ob
#<FUNCTION |BOP1;derivative;BoMBo;7!0|>
writify: PAIRP ob
#<FUNCTION |newGoGet|>UNPRINTABLE188
writify: COMPILED-FUNCTION-P
#<FUNCTION |newGoGet|>
   Can't save the value of step number 1 . You can re-generate this
      value by running the input file #P"test.input" .
   The saved history file is test.axh .


I wonder why #<FUNCTION |BOP1;derivative;BoMBo;7!0|> triggers PAIRP while
#<FUNCTION |newGoGet|> doesn't.  Maybe that's a hint...

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