Or rather, a question about keys: what should the following two code
snippets do?
1) new P0, .Key
set P0, "1"
set N0, P0
print N0
end
2) new P0, .Key
set P0, "1"
set I0, P0
print I0
end
At the moment, the first one throws an exception ('Key not a number!'),
while the second one goes into an infinite loop and eventually
segfaults. As I see it, there are three possibilities:
i) In both cases, we throw an exception.
ii) We try to convert the string to an float (or int) using
string_to_num (or string_to_int). [In which case, what
do we do if the string is something like "asdf"?]
iii) We declare that trying to get numeric information out of
non-numeric keys is undefined behaviour, and so Parrot may do
anything (including segfault).
Which of these should Parrot do?
Simon