#!/usr/bin/env perl -l use strict; use warnings; { my $val = 10; print "INIT: $val"; show_value($val); change_value(\$val, 200); show_value($val); unrelated_value(); show_value($val); print "LAST: $val"; } sub show_value { my ($val) = @_; print '* Show Value'; print "Value: $val"; return; } sub change_value { my ($val_ref, $new_value) = @_; print "* Change Value: $$val_ref to $new_value"; show_value($$val_ref); $$val_ref = $new_value; show_value($$val_ref); return; } sub unrelated_value { my $val = 42; print '* Unrelated Value'; change_value(\$val, 999); return; }