On Fri, Oct 07, 2005 at 12:50:09 -0700, chromatic wrote: > On Fri, 2005-10-07 at 12:49 +0200, Juerd wrote: > > > Ashley Winters skribis 2005-10-06 19:30 (-0700): > > > > > my Array $a = 97; # dies eventually, but when? > > > Runtime -- cannot coerce Int value to Array > > > It is fully determinable at compile time. 97 will never be compatible > > with Array, so I see no reason to wait. > > If I added a multisub for Array assignment so that assigning an integer > value set the length of the array, would 97 be compatible with Array?
That's a compile time reachable analysis. If the compiler finds out that: a. no code will be evaled (due to 'use optimize' or just plain lack of require, eval etc in the code) b. there is no compatbile multisub then it should throw an error > How about in unreachable code (which I do actually believe compilers can > detect some of the time)? These errors should probably still persist, even if dead code is subsequently removed from the bytecode, because dead code can become undead code if certain things change (compile time foldable conditionals over e.g. $*OS are such a scenario) and the same program should be typed the same way everywhere for a given version of Perl. -- () Yuval Kogman <[EMAIL PROTECTED]> 0xEBD27418 perl hacker & /\ kung foo master: /me does a karate-chop-flip: neeyah!!!!!!!!!!!!!!
Description: PGP signature