Re: [sage-devel] Re: Should the "Element = ..." trick require categories?

2017-12-12 Thread Erik Bray
On Tue, Dec 12, 2017 at 8:06 AM, Jeroen Demeyer wrote: > On 2017-12-11 18:35, Simon King wrote: >> >> Well, we want to mix in P.category().element_class (an abstract class) >> into whatever P prescribes for its elements. So, P.element_class >> should be a class whose mro also contains abstract ele

Re: [sage-devel] Re: Should the "Element = ..." trick require categories?

2017-12-11 Thread Jeroen Demeyer
On 2017-12-11 18:35, Simon King wrote: Well, we want to mix in P.category().element_class (an abstract class) into whatever P prescribes for its elements. So, P.element_class should be a class whose mro also contains abstract element classes defined in the category. What I did not say is that th

[sage-devel] Re: Should the "Element = ..." trick require categories?

2017-12-11 Thread Simon King
Hi Jeroen, On 2017-12-11, Jeroen Demeyer wrote: > On 2017-12-11 13:31, Simon King wrote: >> Except if the basic functionality refers to category stuff. Element >> creation does! > > Can you elaborate on this? In the case where a Parent has an > element_class attribute, why should element creatio

Re: [sage-devel] Re: Should the "Element = ..." trick require categories?

2017-12-11 Thread Jeroen Demeyer
On 2017-12-11 13:31, Simon King wrote: Except if the basic functionality refers to category stuff. Element creation does! Can you elaborate on this? In the case where a Parent has an element_class attribute, why should element creation involve categories? I agree that it should still be *pos

[sage-devel] Re: Should the "Element = ..." trick require categories?

2017-12-11 Thread Simon King
Hi Jeroen, On 2017-12-11, Jeroen Demeyer wrote: > On 2017-12-10 22:29, Nicolas M. Thiery wrote: >> As far as I remember, it's stipulated that any Parent should be in >> Sets. > > I don't think that this is stipulated somewhere. I think I stated it in the thematic tutorial on "how to implement ne

Re: [sage-devel] Re: Should the "Element = ..." trick require categories?

2017-12-10 Thread Jeroen Demeyer
On 2017-12-10 15:39, Travis Scrimshaw wrote: My guess is so that one could define an _element_constructor_ at the category level. I see. The problem is that the category comes after Parent in the MRO, right? So if Parent implements _element_constructor_, then the category cannot. -- You rec

[sage-devel] Re: Should the "Element = ..." trick require categories?

2017-12-10 Thread Travis Scrimshaw
My guess is so that one could define an _element_constructor_ at the category level. Although IMO, the possibility of that being meaningful is low considering you have to know something about the implementation of the associated element class in order to do this, which breaks the abstract-ness