in reply to effects of ampersand and non ampersand when referencing a sub name

\&execute and \execute do two different things.    \&execute passes a code reference to the subroutine threads->create while \execute executes the subroutine execute and passes a reference to the return value.