It just runs the code inside. The only way we can get around this is by using the Session object as a stack to save parameters on and get the parameters from the stack in the file being called. We can use the same technique to return values. If you're serious about reusing code, then creating a component may be the way to go. As with the include files it allows you to call functions that perform a certain function.
Components are pre-compiled and therefore run faster than script code, always.
There is is some overhead involved however in invoking them, so small code blocks do not qualify for this approach. Then again we don't get real problems with include files unless we are talking about large blocks of code. A final piece of advice What has been discussed above is a guideline to help you decide what is best in your case. Also every case is different. If you have opportunity, you may want to test the different scenario's.