#11900: Serious regression caused by #9138
----------------------------------------------------------------------------------------+
   Reporter:  SimonKing                                                         
        |          Owner:  tbd                  
       Type:  defect                                                            
        |         Status:  needs_work           
   Priority:  critical                                                          
        |      Milestone:  sage-4.8             
  Component:  performance                                                       
        |       Keywords:  categories regression
Work_issues:  Laurent series rings are fields. Add docs. Don't use is_ring and 
friends  |       Upstream:  N/A                  
   Reviewer:  Jeroen Demeyer, Nicolas M. ThiƩry                                 
        |         Author:  Simon King           
     Merged:                                                                    
        |   Dependencies:  #9138 #11911         
----------------------------------------------------------------------------------------+

Comment(by nthiery):

 Replying to [comment:126 SimonKing]:
 > I'd of course appreciate your answer to my questions, but here is how I
 would answer:
 >
 > Replying to [comment:125 SimonKing]:
 > >  * Do we want to allow for subclasses?
 >
 > We don't. Subclassing a singleton means that it is not a singleton.

 +1 (just to be pedantic: Subclassing a concrete singleton class means that
 ...)

 > > If we don't, shall the attempt to create a subclass of a subclass of
 Category_singleton result in an error?
 >
 > I think a big fat warning in the docs should be enough.

 +1. The above should be just explained.

 > >  * Should the attempt to do `Category_singleton()` result in an error?
 Namely, this would destroy ''all'' attempts to create a new singleton
 category in that session.
 >
 > It might be reasonable.

 Category_singleton() won't pass the TestSuite since it contains abstract
 methods. I think this is enough.

 > >  * Do we want that `EnumeratedSets` is a singleton? Then de Bruijn
 sequences have to change.
 >
 > I think we do want that enumerated sets form a singleton.

 +1. But we don't necessarily have to do it in this patch if this is
 inconvenient.

 >  I really don't see why de Bruijn sequences are not simply copying the
 `_call_` method from the enumerated sets.

 Especially since the copy can easily be done with something like:
 {{{
 class DeBruijnSequences
     ...

     _call_ = EnumeratedSets.__dict__['_call_']
 }}}

 Feel free to postpone that (making EnumeratedSets a singleton+fixing de
 BruijnSequences) to a later patch. Though.

 I need to check what exactly is the use case for their _call_ method.
 Maybe a candidate for CategoryMethods in the long run.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11900#comment:127>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to