On Sat, Aug 6, 2011 at 2:21 AM, Volker Braun <vbraun.n...@gmail.com> wrote: > On Friday, August 5, 2011 9:10:12 PM UTC+1, kcrisman wrote: >> >> [...] this is because Cython puts a lot of cimport and >> other stuff long before the "regular" stuff in the C file. > > Slightly OT, but I recently noticed that Sage is using cython > --disable-function-redefinition. > The http://wiki.cython.org/ReleaseNotes-0.14 have the following to say about > this option: > > Python functions are declared in the order they appear in the file, rather > than all being created at module creation time. This is consistent with > Python and needed to support, for example, conditional or repeated > declarations of functions. In the face of circular imports this may cause > code to break, so a new --disable-function-redefinition flag was added to > revert to the old behavior. This flag will be removed in a future release, > so should only be used as a stopgap until old code can be fixed. > > When I tried to remove the --disable-function-redefinition, I got lots of > failures from the Sage library. This is not unexpected, as the release notes > state. I tried to clean up some of the circular imports but I eventually ran > out of steam. If anybody wants to play with it, here is my partial fix: > > https://bitbucket.org/vbraun/mq-for-sage-toric-varieties/src/677f54a67aed/trac_xxxx_uncircularize_cython_classes.patch >
Could you make a trac ticket for this issue? -- 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 URL: http://www.sagemath.org