#14054: Cythoned UniqueRepresentation
---------------------------+------------------------------------------------
   Reporter:  SimonKing    |             Owner:  tbd                        
       Type:  enhancement  |            Status:  new                        
   Priority:  major        |         Milestone:  sage-5.7                   
  Component:  performance  |          Keywords:  cython UniqueRepresentation
Work issues:               |   Report Upstream:  N/A                        
  Reviewers:               |           Authors:  Simon King                 
  Merged in:               |      Dependencies:  #14017                     
   Stopgaps:               |  
---------------------------+------------------------------------------------
 `UniqueRepresentation` provides a comfortable way to create unique parent
 structures, and automatically provides a hash and certain comparison
 methods. Problem: It relies on a metaclass, namely `ClasscallMetaclass`
 and thus has to be a Python class. That's bad for speed.

 Here, I suggest to create a new cdef class `UniqueRepresentation_c` that
 provides hash and comparison, and let `UniqueRepresentation` inherit from
 it, just adding the classcall method.

 The problem is that `UniqueRepresentation` relies on cached_method, and
 this decorator had problems to work on methods defined in Cython with
 varargs and keywords arguments. That is fixed in #14017, which is thus a
 dependency.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/14054>
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 unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to