http://www.perlmonks.org?node_id=1183091

Not much obfuscation really. The idea was to try and see if it was possible with some unusual code to predecrement a constant or at least to pretend to do so.

*0=sub: lvalue {my$l}, print --0 ->(!0)

Replies are listed 'Best First'.
Re: Predecrement a constant?
by RonW (Vicar) on Mar 21, 2017 at 17:51 UTC

    Very interesting.

    I wonder if this is a side effect of the mechanism that provides the predefined variables $0, $1, $2, .... Or maybe it's a "loop hole" in the bare word symbol mechanism.

    Either way, I consider this to be a bug in Perl.

    Update: But it's a trick. Shame on me for skipping my morning caffeine.