I don't believe this works without parentheses because $anything is treated as a variable whereas $(anything) will create a subshell and call the "anything" function. But I wasn't sure, so I tried it in the shell. And that seems to be the case.