On Monday, March 19, 2018 at 8:04:07 AM UTC-7, Emmanuel Charpentier wrote:
>
>
>
>    - Some functions (mostly inherited from Maxima) *do* already create 
>    new symbolic variables, but do not inject them in the relevant namespace. 
>    In *this* case (and this case only), I'd like to have this injection done 
>    by default, but controllable via an option. *Prima facie,* our targets 
>    are solve and desolve + their friends. But I forget some other ones almost 
>    surely... Hints ?
>
> -2. This is only possible with very comprehensive hacks: the "interactive 
name-space" has no special status outside of IPython. The sage library 
wouldn't have an idea where to insert this stuff. We'd basically require a 
"scratchpad" onto which all code can scribble binding suggestions and then, 
once control comes back to IPython, a decision could be made on iwhether to 
nject these bindings.  

>
>    - %(%)auto_constants : control whether Maxima-generated constants are 
>    injected in the relevant namespace. Default : True.
>    
> -2 for the default; -1 in general. There's no trigger event in maxima to 
make these bindings. If you take the sage-maxima interface (which would see 
symbols from maxima it hasn't seen before), you could use that as a 
trigger, but then the behaviour of the interface relies on lifetime 
history! (and the fact that the sage-maxima interface is a memory leak for 
its translation dictionary).

These things happen more often:

sage: matrix(2,2,[1,2,3,4]).charpoly()
x^2 - 5*x - 2

creates a polynomial over ZZ. Should IPython rebind x to ZZ['x'].gen() ? 
Only when x is unbound? More generally:

sage: QQ['y','z']
Multivariate Polynomial Ring in y, z over Rational Field

should that trigger y and z being bound?

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to