#10963: More functorial constructions
-------------------------------------+-------------------------------------
Reporter: nthiery | Owner: stumpc5
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-6.1
Component: categories | Resolution:
Keywords: days54 | Merged in:
Authors: Nicolas M. Thiéry | Reviewers: Simon King, Frédéric
Report Upstream: N/A | Chapoton
Branch: | Work issues:
public/ticket/10963 | Commit:
Dependencies: #11224, #8327, | 478de48553d203516cddb47e0cb89c34ccc210ee
#10193, #12895, #14516, #14722, | Stopgaps:
#13589, #14471, #15069, #15094, |
#11688, #13394, #15150, #15506 |
-------------------------------------+-------------------------------------
Comment (by SimonKing):
Replying to [comment:319 nthiery]:
> Ok; from this discussion it became clear that the name of this
> attribute was bad since we did not interpret it in the same way. I
> reworked a tiny bit the protocol so that it's less ambiguous, and
> improved the doc accordingly.
So, now you want that `_base_category_class_and_axiom_origin` is
explicitly set to `'hardcoded'` whenever someone hardcodes
`_base_category_class_and_axiom`? Said "someone" will probably forget to
set it. That's why I still think it is better to ''not'' set it, if it is
hardcoded, and to automatically set it in classget resp. in the lazy
attribute.
> If all test pass, if you are happy with the above change,
Up to the above criticism, I am happy with the previous two commits. But
let's see if tests pass.
Some meta-remark:
It seems to me that you want to turn sage.categories into a database, but
without using existing implementations of databases (aka "reinventing the
wheel"). Relations between the items stored in that database are encoded
in `_base_category_class_and_axiom` on the one hand, and by providing
nested classes (e.g.,
{{{
PermutationGroups.Finite =
LazyImport('sage.categories.finite_permutation_groups',
'FinitePermutationGroups')
}}}
on the other hand. Here, `_base_category_class_and_axiom` is either
hardcoded, guessed from the names (which requires to stick to certain
naming conventions), or explicitly obtained if `__classget__` happens to
be involved.
Perhaps (in a second step, certainly not now) one should think of using
dedicated database tools?
--
Ticket URL: <http://trac.sagemath.org/ticket/10963#comment:320>
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.
For more options, visit https://groups.google.com/groups/opt_out.