Thanks Michael. Interesting technique, but not yet quite what I'm looking for.
This technique loads the script with property x into the calling script as a script object; it still doesn't pass control to the called script. The behavior seems to be that the modified property value of the loaded script object is (1) not saved in the test.scpt file and (2) not loaded into the calling script. If test.scpt is run from the script editor 10 times, the property x value is incremented each time, finally reaching 10. However, after running it 10 times and then running the calling script once, the "x" property of the script object in the calling script is 1 rather than 11, indicating that the property value that is loaded is the initial declared value of property x. Conversely, if after running the calling script one runs "test.scpt" again, the next value of property x will be 11, indicating that the last value of property x of the script object in the calling script (which in this example is 1) has not been saved to file "test.scpt".
Only the code itself, and therefore the initial values of properties, is passed between script files with load and save operations. The script-modified values of properties remain in the files where the modifications took place.
BTW, how do you get those links to scripts in your posts?