This function is invoked when the script is run. The line number is provided so that if there is an error,
the function can provide a more specific error message for the user. If the function was canceled due to a fatal error
in the syntax of the user input or some similar situation, it should throw a ConfigRuntimeException.
All parameters sent to the
function have already been resolved into an atomic value, so functions do not have to worry about
resolving parameters. There is an explicit check made before calling exec to ensure that Construct ... args
will only be one of the atomic Constructs. If a code tree is needed instead of a resolved construct,
the function should indicate so, and execs will be called instead. If exec is needed,
execs should return CVoid.