As an easy fix you could take out the whole Any() definition from 
any.spad.pamphlet, put it into a file any.spad in your HOME directory 
and replace the definition of = by

      x = y ==
         dx := dom x
         dy := dom y
        dx ~= dy => false
         Dx : BasicType := EVAL(dx)$Lisp
         (obj x) pretend Dx = (obj y) pretend Dx

as Waldek suggested.

Then simply start fricas from that directory and say

)co any.spad

That should override the FriCAS Any by the new one. So you would have an 
appropriate =.

However, as Waldek already said. The above definition for = is dangerous.

I would rather like to have something like

      x = y ==
         dx := dom x
         dy := dom y
        dx ~= dy => false
         Dx := EVAL(dx)$Lisp
         if Dx has BasicType
           then (obj x) pretend Dx = (obj y) pretend Dx
           else false

Unfortunately, that gives

    compiling exported = : ($,$) -> Boolean

    >> System error:
    The index 4 is too large.

and I have no idea how I can get around that problem.

Ralf

--~--~---------~--~----~------------~-------~--~----~
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