Hey, I wouldn't wrap if you can/want to use it as another type matrix (in particular, being able to use its superclass' methods without having to unwrap it, worry about coercion, write functions which simply pass to the wrapped element, etc.). IMO wrapping is good when you want to interact with a class in a specific way that is not properly supported by its design/base functionality. For (a slightly contrived) example, consider the set of natural numbers N = {1, 2, 3...}, you want to use the Integer class, but you don't want to have them divide to QQ and add back to your N (say you are thinking of this as a monoid under +). This would be a good place to wrap the Integer class. If you wanted to add functionality and want these to still behave (somewhat) like Integers, then you should subclass. Sorry if that sounds like more of a rant.
Best, Travis -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel?hl=en. For more options, visit https://groups.google.com/groups/opt_out.