Вам необходимо использовать модуль English
.
$OSNAME
на самом деле является псевдонимом для $^O
, вы можете использовать $^O
без использования English
модуля, но для использования $OSNAME
вам необходимо использовать English
модуль.
Также, поскольку use strict
отсутствует, вы не получили никаких ошибок.
Всегда используйте use strict;
в вашей программе, это поможет вам обнаруживать ошибки такого рода.
Так что попробуйте:
use English;
use strict;
print "Operating system is $OSNAME\n";