Hi! On 2013-02-15, Volker Braun <vbraun.n...@gmail.com> wrote: > And nothing lasts as long as a temporary quick fix ;-)
Very true. But when I look at ParentWithGens itself, it seems to me fine. ParentWithBase seems almost fine, except for cdef _coerce_c_impl(self,x): check_old_coerce(self) if not self._base is self: return self._coerce_try(x,(self._base)) else: raise TypeError, "No canonical coercion found." where self._coerce_try is not defined in this file. But since coercion is supposed to be provided in a different way anyway (in the new coercion model), one could just include a deprecation warning, and see what classes actually call the old _coerce_c_impl. In this way, one could assess how much work is needed to be done. Concerning parent_old.Parent, I notice that the __init__ method only does things that would make sense to be done in parent.Parent.__init__ as well. In particular, it call _set_element_constructor, which is defined in parent.Parent anyway. Strangely parent_old.Parent.__init__ does not call parent.Parent.__init__. That's why rings.ring.Ring.__init__ calls parent.Parent.__init__ directly. And of course, parent_old.Parent has a lot of methods that belong to the old coercion model. But would it seem so hopeless to try and merge parent_old.Parent and parent.Parent into one class? I guess I'll start with the afore-mentioned assessment... Cheers, Simon -- 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?hl=en. For more options, visit https://groups.google.com/groups/opt_out.