#14214: Cythoned homsets
----------------------------------------------+-----------------------------
Reporter: SimonKing | Owner: tbd
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-5.10
Component: performance | Resolution:
Keywords: Hom, cython, cached method | Work issues: How to store
domain and codomain?
Report Upstream: N/A | Reviewers:
Authors: Simon King | Merged in:
Dependencies: #14159, #12951, #13184 | Stopgaps:
----------------------------------------------+-----------------------------
Comment (by SimonKing):
Replying to [comment:56 nbruin]:
> > Note that I tested to cythonize lazy_attribute ''and'' to cimport
Parent. It failed (circular import or so).
>
> That can't be `lazy_attribute`, or at least not my version. It doesn't
have any imports!
sage.structure.parent imports lazy_attribute, and (to my surprise, I must
say) cimporting Parent in sage.misc.lazy_attribute did crash.
> So, we come back to the first question: Where shall we put the code? I
think it makes sense to cdefine `instance` being Parent, but this would be
impossible in `sage/misc/lazy_attribute.pyx`.
>
> If it's a parent-specific support class it can just go with the parent
source, right?
Hey, that's a good idea!
> Not if you go the Parent-specific `CachedAttribute` route. That would be
a bad name, by the way. Perhaps `ParentAttributeBacker` is better.
`ParentNonDataDescriptor`?
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/14214#comment:57>
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.