#16250: Monoids._test_one() incorrect for unhashable one elements
-------------------------------------+-------------------------------------
Reporter: saraedum | Owner:
Type: defect | Status: needs_review
Priority: trivial | Milestone: sage-6.3
Component: categories | Resolution:
Keywords: hash | Merged in:
Authors: Julian RĂ¼th | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/saraedum/ticket/16250 | 7b35c8a32ea67041665dddd8f1d98c7b8cfb6141
Dependencies: | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by nthiery):
Replying to [comment:7 saraedum]:
> I thought about this too. I agree that this would be better in theory.
The problem with this approach are things like matrices. They define a
hash which raises a `TypeError` if the matrix is mutable.
- The methods one and zero should return immutable objects whenever
possible, because more often than not the result is cached. If the
result is a matrix this is no issue: it's enough to make it
immutable. And then it becomes hashable. Part of the rationale of
this test is precisely to check for this!
- Having a method __hash__ that raises an error is bad advertising in
the first place. In some cases it might be simpler to do it this way
(e.g. for objects that can be immutable or not). But I would not
want to particularly support this.
Cheers,
Nicolas
--
Ticket URL: <http://trac.sagemath.org/ticket/16250#comment:8>
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/d/optout.