in reply to Calling a method from class / subclass?

I don't believe this code will do anything useful. It will assign a value to a variable literally named $__PACKAGE__::myLog, which would be a very strange thing, as it would be no different from assigning to (again picking an arbitrary string) $__WOOHOO__::myLog. It's a variable in the package called __PACKAGE__, not a variable in the current package.

__PACKAGE__ as a special token works only when it is not part of a larger string or construct. Perhaps what they really wanted was:

{ no strict; ${__PACKAGE__ . "::mylog"} = ...; }
which would make more sense, making $mylog in the current package set to a value.

Update: Of course, I now realized I could have simply used ${"mylog"} = ... for that assignment. What I did was overkill. :)