C:\test>perl -MO=Deparse -e"print scalar( 'fred', 'john', 'bill' )" print scalar('???', '???', 'bill'); -e syntax OK #### C:\test>perl -we"print scalar( 'fred', 'john', 'bill' )" Useless use of a constant in void context at -e line 1. Useless use of a constant in void context at -e line 1. bill #### C:\test>perl -MO=Deparse -e"print scalar( sub{'fred', 'john', 'bill'}->() )" print scalar sub { 'fred', 'john', 'bill'; } ->(); -e syntax OK #### C:\test>perl -we"print scalar( sub{'fred', 'john', 'bill'}->() )" bill