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

Reply via email to