2009/9/4 Golam Mortuza Hossain <gmhoss...@gmail.com>:
>
> Hi,
>
>> On Wed, Sep 2, 2009 at 12:13 PM, kcrisman<kcris...@gmail.com> wrote:
>
>>> Very interesting.  Continuing from the above code:
>>>
>>> sage: assume(a,'complex')
>>> sage: x.conjugate().simplify()
>>> -I*b + conjugate(a)
>>>
>>> Clearly we were not calling declare.  Is there any way to do this for
>>> ANY globally defined variable, though?  It seems overkill to put it in
>>> var(), and one wouldn't want it to conflict with (say) assume
>>> (n,'integer') or something.
>
>
> I played around little bit to fix this bug. Unfortunately, it doesn't seem
> that we can avoid calling "declare()" in maxima for each (complex)
> variable defined in sage.
>
> The best thing we can do is to delay the declaration into maxima until
> we actually need to call maxima to do some computation.  This way
> can avoid slowing down stuffs.

This is definitely possible.

> Maxima-interface experts: Is it possible to append such declaration
> statements into maxima init string or similar?

That's definitely not the way to do it.

What we need is to queue up (put in some list somewhere) all
declaration that could ever be needed, then whenever we do a Sage -->
calculus Maxima conversion, we would empty the queue if it is
nonempty.  Also, if Maxima were to crash/get restarted (does that ever
happen anymore), we would need to  make sure all var's get set again.
This seems very do-able.

William

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to