$ perl use Lexical::Alias; # 5.8+, see pod my $ro; alias ${\'readonly_lexical'}, $ro; print "=$ro=\n"; defined eval {$ro = 'newval'} or print "Exception: $@"; ^D =readonly_lexical= Exception: Modification of a read-only value attempted at - line 8.