Well, I have a lot to digest, but off the top of my head (and having nothing to do with objects, but rather the string discussion at the end), it would be very useful if I could assert:
no string "complex"; or something like that. That is to say, I would love to have a way to say that my strings are just plain old C-style arrays of 8-bit characters. I know that at a low level Parrot is still going to have its way with these, but at the very least, I want to be able to put the tag in there (lexically or otherwise) to make me feel better about myself as a human being when I do: my $n = ''; for @stuff -> $_ {$n ~= (defined($_)??1::0)} my $stuff_as_bitvec = pack("b*",$n); %state_is_known{$stuff_as_bitvec} = 1; It's going to be hard for me to accept that that operation is going to have to worry about codepoints... really hard. Especially so if I'm doing this is a tight loop as I was recently. I suppose if there were a type: my Octets $stuff_as_bitvec = ''; ... Then that would be a start, but even then what of the hashing operation? Will there be some property of a hash I have to set too? class Octets_Num_Pair is Pair { my Octets $.key; my Num $.val; ... redefine key management in terms of Octets ... } my Octets_Num_Pair %state_is_known; Is that right, or would there be a key_type property on hashes? More to the point, is it worth it, or will I be further slowing down hash access because it's special-cased in the default situation? -- Aaron Sherman <[EMAIL PROTECTED]> Senior Systems Engineer and Toolsmith "It's the sound of a satellite saying, 'get me down!'" -Shriekback