$ perl -ce'use strict; message = "foo";' Can't modify constant item in scalar assignment at -e line 1, near ""foo";" Bareword "message" not allowed while "strict subs" in use at -e line 1. -e had compilation errors. #### $ perl -ce'use strict; sub message; message = "foo";' Can't modify non-lvalue subroutine call in scalar assignment at -e line 1, near ""foo";" -e had compilation errors. #### $ perl -ce'use strict; sub message :lvalue; message = "foo";' -e syntax OK #### $ perl -ce'use strict; my message = "foo";' No such class message at -e line 1, near "; my message" syntax error at -e line 1, near "my message =" -e had compilation errors.