unixhost> # case 1 without eval unixhost> perl -ew '$foo = { bar => () };' Name "main::foo" used only once: possible typo at -e line 2. Odd number of elements in hash assignment at -e line 2. unixhost> unixhost> # case 2 - now "protect it" with eval ... unixhost> perl -ew 'eval "$foo = { bar => () };";' unixhost> unixhost> # nothing!