if( $threads ) { require threads::shared; threads::shared->import(); share @foo; # No parens used } #### use Exception::Spiffy 'catch'; catch { ... }; #### require Exception::Spiffy; Exception::Spiffy->import('catch'); &catch( sub { ... } ); #### if( $threads ) { require threads::shared; threads::shared->import(); share( \@foo ); } #### Type of arg 1 to threads::shared::share must be one of [$@%] (not reference constructor) #### if( $threads ) { require threads::shared; threads::shared->import(); &share( \@foo ); # The ampersand is important }