- Overloading and parameter types validation.
- Clash between overloading hashification and arrayification and the
valueswith the new dereferencing semantics.
- There is no way to know if you received characters or binary data, lots of libraries and even core functions work differently in these cases - but often it is not documented.
- In Perl observing a variable changes it - for example - reading a variable containing a string in a number context will fill in its number slot (as far as I understand it - see perlguts for the details). Normally it does not matter - but it makes threading less efficient (because shared variables need to go through additional loops to work).
$character makes the one making checking
$@after eval unreliable.