Aaron Sherman writes:
: In this example:
: 
:       %hash = ($a=>$b);
: 
: $a can be anything. In fact, since Perl6 promises to retain the original
: value of $a, we're rather encouraged to store complex data there. But,
: this poses a problem. The key to use for hashing might not ideally be
: the string representation.
: 
: For example, if I'm hashing a collection of special file objects, it
: might be useful in one context to do:
: 
:       method operator:qq () {
:               return read_whole_file();
:       }
: 
: But, if I have 100 of these objects, and I try to put them in a hash,
: life could get ugly fast!
: 
: More helpful would be to have this builtin:
: 
:       method operator:hash () {
:               return operator:qq();
:       }
: 
: and then allow me to override it in my class like so:
: 
:       method operator:hash () {
:               return filename();
:       }
: 
: This allows me to specify separate hashing and stringification methods,
: but retains Perl's original default of combining the two.

Yes, that's what we intend to do.

Larry

Reply via email to