K 10
svn:author
V 7
nelhage
K 8
svn:date
V 27
2007-03-27T01:04:54.087021Z
K 7
svn:log
V 953
 r20705@phanatique:  nelhage | 2007-03-26 21:04:37 -0400
 Getting rid of indirect object syntax new calls. Quoting perlobj:
 
 > But what if there are no arguments? In that case, Perl must guess what
 > you want. Even worse, it must make that guess *at compile time*. Usually
 > Perl gets it right, but when it doesn't you get a function call compiled
 > as a method, or vice versa. This can introduce subtle bugs that are hard
 > to detect.
 > 
 > For example, a call to a method "new" in indirect notation -- as C++
 > programmers are wont to make -- can be miscompiled into a subroutine
 > call if there's already a "new" function in scope. You'd end up calling
 > the current package's "new" as a subroutine, rather than the desired
 > class's method. The compiler tries to cheat by remembering bareword
 > "require"s, but the grief when it messes up just isn't worth the years
 > of debugging it will take you to track down such subtle bugs.
     

END
