On Tue, Apr 24, 2012 at 07:23:27PM +0000, Simon King wrote:
> OK. But I think priority should be given to cythonization of the existing
> metaclasses. Namely, Florent found out how one can produce a cdef'd
> metaclasses, so that its instances (thus, usual classes) inherit the fast
> methods (like __call__). One can cdefine NestedClassMetaclass and
> derive from it a cdefined ClasscallMetaclass (my patch isn't posted
> yet). Together with some tricks that Florent presented in his original
> patch at #12808, one should get a considerable speedup in creation of
> classes.

+1

> Also I found that one can simply rename sage/structure/dynamic_class.py
> into sage/structure/dynamic_class.pyx -- that alone should yield some
> speedup. And then one can likely gain even more from using Cython more
> properly.

Yes, I have seen that (but see my comment on the ticket)

> But independent of that, I think at some point I will try to produce
> a cdefined CustomisationMetaclass. *IF* it turns out that it can compete
> speed-wise, then we can still decide whether we should use it to
> refactor the existing metaclasses.

+1

Cheers,
                                Nicolas
--
Nicolas M. ThiƩry "Isil" <nthi...@users.sf.net>
http://Nicolas.Thiery.name/

-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.

Reply via email to