It looks like you're expecting $path to get set by the import routine and then be seen by the body of the package but the code is executing the other way around.
'use Module' can be looked at as a combination of 'require Module' and 'Module::import()'. Your conditional print statement will get executed during processing of the require but $path won't get defined until import gets called later.
---
print map { my ($m)=1<<hex($_)&11?' ':'';
$m.=substr('AHJPacehklnorstu',hex($_),1) }
split //,'2fde0abe76c36c914586c';
|