in reply to why does typo work?

See Comma Operator. The operator => is not a hash binder, but a special comma operator.

The if EXPR evaluates to either true or false, so EXPR is evaluated in scalar context, and in scalar context the comma operator does... There.

perl -le'print map{pack c,($-++?1:13)+ord}split//,ESEL'