True, maybe I trusted the "latest" in the url too much ;-)

In src/setup.py we set Cython.Compiler.Options.old_style_globals = True, 
which causes Cython to fall back to the old behavior.

possibly related: http://trac.sagemath.org/ticket/12446

I think the right place for the global variable injection would be the 
frontend-specific rich representation backends that I recently added in 
sage.repl.rich_output. Its dependent on the repl implementation after all. 
Then we could also do away with the Cython hack.

 



On Wednesday, March 25, 2015 at 11:02:51 PM UTC+1, Jeroen Demeyer wrote:
>
> On 2015-03-25 19:40, Volker Braun wrote: 
> > Cython doesn't really have globals 
> > dictionary. 
> http://cython.readthedocs.org/en/latest/src/userguide/limitations.html 
> > says: 
> > 
> > "The globals() builtin returns the last Python callers globals, not the 
> > current function’s locals. This behavior should not be relied upon, as 
> > it will probably change in the future." 
>
> This is about Cython 0.15 and the analogous document for Cython 0.22 
> doesn't have anything anymore about globals(). Which makes me guess that 
> the fact that var() works is a bug and not a feature. 
>
>

-- 
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 http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to