On Wed, Jul 08, 2009 at 04:46:27PM -0700, David Roe wrote:
>    I've updated my review patches (categories-framework-ref-dr.patch and the
>    small categories-tensorial_rename-dr.patch).  

I just reviewed your reviewer patch this morning. Wow, thanks for the
massive work!

>    Unfortunately, I won't be able to work on this much more in the
>    next month and a half.  categories-framework is quite close to
>    getting a positive review; the following are the main things that
>    need to be remedied first.

I have a couple things that I need to discuss with you. Would you be
available at some point for an IRC chat? Today would be best (except
from 5 to midnight). This week-end should be possible.

>    * 100% doctests.  I wrote some doctests, but not as many as I'd hoped. 

Well, far more than "some"!

>    This probably constitutes the major portion of the remaining
>    reviewing work.

Ok. I will work on that.

>    * Have some pickling tests, but make sure that it's comprehensive.

Ok. Good occasion to add plenty of TestSuite(...).run().

>    * The function Hom in sage.categories.homset could use some cleaning up,
>    though it works currently.

Yeah. Morphims in general need a lot of work. So, let's postpone this.

>    * Find a better name for sage.categories.map.Map.category_for

>    * Delete sage.categories.morphism.SetMorphismPython, or give a reason it
>    shouldn't be deleted.

Deleted.

>    Notes:
> 
>    * construction is unneeded for categories (used by the coercion system for
>    parents).  I commented out the definitions of construction

>From a general point of view, I find this very nice feature for the
user to know how a given object has been constructed (or can be
reconstructed). But yes, this is not urgently needed; let's postpone
this.

>    Discussion: we currently have CategoryObject._base as a C attribute
>    because some elements want fast access to a "base."  Is CategoryObject the
>    right place to put this?  Maybe we should generalize the examples of
>    sage.rings.integer_mod.NativeIntStruct and
>    sage.rings.padics.pow_computer.PowComputer_class?
> 
>    Nicolas: Can the comment at the top of category.py "# Ugly temporary?
>    workaround; see doc of UniqueRepresentation" describe why this hack is
>    needed?

Thanks for pointing this out. It's indeed not needed anymore
(UniqueRepresentation works now better than it used to be). I just
removed it (and am running the tests).

>    Discussion: what's the right inheritance structure for homsets?  Also, how
>    should one specify that a category's homsets are enriched in another
>    category?  Via a method like "enriched_in()" on the category?  By
>    extra_super_categories() in a custom HomCategory?

I added those comments to
http://sagetrac.org/sage_trac/wiki/CategoriesRoadMap.  We really
should have a general brainstorm later about homsets. It might be
easier during some future Sage days.

>    * I added a new weakref .version of cachefunc, 

I'll extract a separate patch for this and review it.

>    and source introspection for dynamic classes.  Someone should
>    review these (along with the rest of my changes)

I will make this into a reviewer's patch for the dynamic_class patch
#5991, and review it.

>    Nicolas: can you clarify the use of
>    sage.categories.morphism.Morphism.register_as_coercion

It's just an experiment toward expressive notations for constructing
new coercions. With it, you can just do:

 - hom(domain, codomain, ...).register_as_coercion()

rather than:

 - codomain.register_coercion(hom(domain, codomain, ...))

It's actually not yet used, but would improve the readability of the
sf patch.

Do you have suggestions for a better name?


>    I will be accessible on e-mail, but don't have time to work on this
>    anytime soon.  Good luck!  I want to see this incorporated into Sage.

Thanks again for all your work!

Cheers,
                                        Nicolas
                                Nicolas
--
Nicolas M. ThiƩry "Isil" <nthi...@users.sf.net>
http://Nicolas.Thiery.name/

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to