# Ok - pick a value based on the value of $bar $foo = $bar eq "baz" ? "foobaz" : "foobar"; print "I am the ", ($sex eq "male" ? "king" : "queen"), "of rock & roll"; some_subroutine( ref($foo) eq "ARRAY" ? $foo : [$foo] ); #### # Not ok - ?: flow control $bar eq "baz" ? $foo = "foo" : $bar = "baz"; #### # Ok - if/else flow control if ($bar eq "baz") { $foo = "foo"; } else { $bar = "baz"; } #### # Ok - if/else flow control, if a bit verbose. if ($bar eq "baz") { $foo = "foo"; } else { $foo = "baz"; }