sub foo { return $bar or $baz } #### perl -MO=Deparse -e 'sub foo {return $bar or $baz}' sub foo { $baz unless return $bar; } #### perl -MO=Deparse -e 'sub foo {return $bar || $baz}' sub foo { return $bar || $baz; } #### sub foo { return ($bar or $baz); } #### perl -MO=Deparse -e 'sub foo {return ($bar or $baz)}' sub foo { return $bar || $baz; } #### sub foo { my $filename = shift; my $content = do { local $/; open my $fh, '<', $filename or die $!; return scalar(<$fh>); } $content = s/abc/def/g; return $content; } #### sub get_foo { my $self = shift; return $self->{'foo'} ||= do { # expensive operation; return $result; } }