#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.